Graines de plusieurs lignes à la fois laravel 5
Je suis en train d'essayer de graines de ma table users. Si je l'ai essayer comme ça avec les 2 lignes, il échoue. Il fonctionne très bien si je viens d'utiliser un seul tableau au lieu de 2 tables à l'intérieur de l' $les utilisateurs de tableau pour créer des fausses données.
Ce que je fais mal, quelle est la bonne façon de le faire?
class UserTableSeeder extends Seeder {
public function run()
{
DB::table('users')->delete();
$users = [
['id' => 1, 'name' => 'Stephan de Vries', 'username' => 'stephan', 'email' => '[email protected]', 'password' => bcrypt('carrotz124')],
['id' => 2, 'name' => 'John doe', 'username' => 'johnny', 'email' => '[email protected]', 'password' => bcrypt('carrotz1243')],
];
User::create($users);
}
}
Vous devez vous connecter pour publier un commentaire.
Si vous devez utiliser le modèle que vous avez besoin d'une boucle:
Sinon, vous pouvez simplement utiliser
DB::table()
etinsert
:En fait, vous pouvez également appeler
insert()
sur le modèle (la requête résultante est la même)Note si vous choisissez le
insert
méthode vous lâche spécial Éloquent des fonctionnalités telles que les horodatages et les événements du modèle.Cela fonctionne, même pour Laravel 5.3
Vous devez utiliser la commande d'insertion au lieu de créer.
Ainsi, le code ressemblera à ceci: