J'insère de faux enregistrements dans la table mais cela ne bouge pas dans la base de données. Vous pouvez vérifier mon code ci-dessous: -

 public function up()
    {
        Schema::create('employees', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('email',255)->unique();
            $table->string('contact_number');
            $table->timestamps();       
        });

        $faker = Faker\Factory::create();

        $limit = 33;

        for ($i = 0; $i < $limit; $i++) {
            DB::table('employees')->insert([
                'name' => $faker->name,
                'email' => $faker->unique()->email,
                'contact_number' => $faker->phoneNumber,
            ]);
        }
    }

Quelqu'un peut-il me dire où je me trompe? S'il vous plait, j'ai besoin de votre aide avec ceci.

0
Sukhdeep Kaur 21 avril 2017 à 08:35

3 réponses

Meilleure réponse

Si vous souhaitez ajouter la valeur à la base de données, vous devez utiliser seeder. Pour le semoir, vérifiez ici: https://laravel.com/docs/5.4/seeding

0
Pankit Gami 21 avril 2017 à 08:15

Utilisez php artisan make: seeder EmployeesSeeder , puis écrivez ce code dans votre nouveau fichier de semoir:

class EmployeesSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        $faker = Faker\Factory::create();

        Employee::truncate();

        foreach(range(1, 33) as $index)
        {
            Employee::create([
                'name' => $faker->name,
                'email' => $faker->unique()->email,
                'contact_number' => $faker->phoneNumber,
            ]);
        }                   
    }
}

Plus de détails: Base de données: Seeding

0
Odin Thunder 21 avril 2017 à 06:26

Déplacez cette logique vers le semeur:

$limit = 33;

for ($i = 0; $i < $limit; $i++) {
    DB::table('employees')->insert([
        'name' => $faker->name,
        'email' => $faker->unique()->email,
        'contact_number' => $faker->phoneNumber,
    ]);
}

Puis exécutez la commande php artisan db:seed pour exécuter les seeders.

0
Alexey Mezenin 21 avril 2017 à 05:40