Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Привет народ)
Вообщем суть проблемы вот в чем мне надо чтобы сид заполнял по два юзера на каждую категорию. Уже всю голову сломал но я не могу понять как правильно это все организовать. Такой код естесна работает но хотелось бы не говнокодить)
Сам код:
public function run()
{
factory(App\Users::class, 2)->create(['Cat_id'=>'1']);
factory(App\Users::class, 2)->create(['Cat_id'=>'2']);
factory(App\Users::class, 2)->create(['Cat_id'=>'3']);
factory(App\Users::class, 2)->create(['Cat_id'=>'4']);
factory(App\Users::class, 2)->create(['Cat_id'=>'5']);
}
}
Изменено WithoutBrain (25.12.2017 20:01:54)
Не в сети
Нормальный код для сида, но лучше через цикл сделать.
Не в сети
https://stackoverflow.com/a/29723968/272885
It is really easy to do a bulk insert in Laravel using Eloquent or the query builder.
You can use the following approach.
$data = array( array('user_id'=>'Coder 1', 'subject_id'=> 4096), array('user_id'=>'Coder 2', 'subject_id'=> 2048), //... ); Model::insert($data); // Eloquent approach DB::table('table')->insert($data); // Query Builder approach
Запросы в цикле это плохая практика. Для сидов это не создало бы проблем, но к плохому не надо привыкать.
Изменено artoodetoo (26.12.2017 08:54:52)
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
Bulk insert в сиде в тему только при вставке сотен-тысяч строк. Из-за 10 запросов городить подготовку массива в сиде как-то не разумно.
Не в сети
Окей всем спасибо)
Изменено WithoutBrain (26.12.2017 21:27:41)
Не в сети
Страницы 1