Установка автоинкремента, отличного от значения по умолчанию: Laravel не знает об изменении

Python не является ни передачей по значению, ни передачей по ссылке. Это больше «ссылки на объекты передаются по значению», как описано здесь: http://robertheaton.com/2014/02/09/pythons-pass-by-object-reference-as-explained-by-philip- к-член / .

  1. Вот почему это не пропускная способность. Поскольку def append (list): list.append (1) list = [0] переназначить (список) append (list)

возвращает [0,1], показывая, что какая-то ссылка была явно передается как pass-by-value, не позволяет функции изменять родительскую область вообще.

Похоже, что pass-by-reference, hu? Нет.

  1. Вот почему это не перекрестная ссылка. Поскольку def reassign (list): list = [0, 1] list = [0] переназначить (список) список печати

возвращает [0], показывая, что исходная ссылка была уничтожена, когда список был переназначены. pass-by-reference вернул бы [0,1].

Для получения дополнительной информации смотрите здесь: http://effbot.org/zone/call-by-object.htm

Если вы хотите, чтобы ваша функция не манипулировала внешней областью, вам нужно сделать копию входных параметров, которые создают новый объект.

from copy import copy

def append(list):
  list2 = copy(list)
  list2.append(1)
  print list2

list = [0]
append(list)
print list

0
задан ffuentes 11 March 2019 в 14:09
поделиться

2 ответа

Вы можете установить автоинкремент запуска с помощью этого кода

$table->increments('id')->start_from($yourStartValue);

добавить start_from и использовать свое значение для запуска

0
ответ дан Vahe Galstyan 11 March 2019 в 14:09
поделиться

Таким образом, таблица была создана, если я не понял неправильно, почему бы просто не заполнить первую запись, чтобы она увеличивалась после 1?

Например, создайте начальное число БД для вставки данных в таблицу для любой записи. тебе нужно.

Laravel DB Seeding

Выполнить php artisan make:seeder UsersTableSeeder

Затем в начальном файле:

public function run()
    {
        DB::table('technicians')->insert([
            'name' => "John",
            'surname' => "Doe",
            'str_id' => 3,
            etc...
        ]);
    }

Похоже, вы пытаетесь вставьте запись в БД, где она уже существует, для идентификатора 1. Проверьте свою БД.

0
ответ дан Tim Rowley 11 March 2019 в 14:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: