I Sto facendo in questo modo:
creazione di seminatrice con artigiano:
php artisan make:seeder UsersTableSeeder
quindi si apre il file e si entra utenti:
use Illuminate\Database\Seeder;
class UsersTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
DB::table('users')->insert([
'name' => 'User1',
'email' => '[email protected]',
'password' => bcrypt('password'),
]);
DB::table('users')->insert([
'name' => 'user2',
'email' => '[email protected]',
'password' => bcrypt('password'),
]);
}
}
Se si desidera generare elenco casuale di utenti, è possibile utilizzare Fabbriche:
use Illuminate\Database\Seeder;
class UsersTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
factory(App\User::class, 50)->create();
/* or you can add also another table that is dependent on user_id:*/
/*factory(App\User::class, 50)->create()->each(function($u) {
$userId = $u->id;
DB::table('posts')->insert([
'body' => str_random(100),
'user_id' => $userId,
]);
});*/
}
}
Poi nel file app/database/semi/DatabaseSeeder.php uncomment o aggiungi in esecuzione funzione una riga:
$this->call(UsersTableSeeder::class);
essa sarà simile a questa:
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$this->call(UsersTableSeeder::class);
}
}
Alla fine si esegue:
php artisan db:seed
o
php artisan db:seed --class=UsersTableSeeder
spero possa aiutare qualcuno. PS: questo è stato fatto su laravel 5.3
Vuoi eseguire il 'SQL' da dentro 'Laravel'? Se no, perché non stai eseguendo quel 'SQL' da' phpMyAdmin' o 'MySql-console'. –
Laravel funziona con percorsi, controller e modelli Suppongo che li abbia già impostati prima di interrogare il database – Franco
Franco: no Non ho ancora tutti questi requisiti. Per gli altri utenti, naturalmente, avrò. Ma per il primo, come crearlo nel database? – Dom