Сеялки Laravel 5: как использовать автоинкрементное поле из одной сеялки в другую?

Пример: у меня есть 2 модели: Book а также Author, У каждой книги есть только один автор.
Идентификатор книги — это автоинкрементный ключ.

Поэтому я должен использовать 2 сеялки: BookTableSeeder а также AuthorTableSeeder, Они в разных классах: BookTableSeeder а также AuthorTableSeeder,

Итак, сначала я семя booksтогда я семя authors,
Как я могу заполнить книги, если книги используют идентификаторы авторов?

2

Решение

Нет смысла сеять книги перед авторами, так как книги нуждаются в авторах.

Вы можете попробовать что-то вроде этого на BookTable Seeder, сначала создавая авторов, а затем вы можете создавать книгу:

$book->author = Author::where('name', 'Shakespeare')->first();

Также не имеет смысла для каждого автора иметь только одну книгу

1

Другие решения

Других решений пока нет …