Rumah  >  Artikel  >  rangka kerja php  >  Cara menggunakan fungsi data isian Laravel

Cara menggunakan fungsi data isian Laravel

PHPz
PHPzasal
2023-04-19 10:08:40979semak imbas

Laravel ialah rangka kerja PHP popular yang menyediakan banyak fungsi dan alatan berguna, salah satu ciri penting ialah mengisi data. Pengisian data merujuk kepada pengisian data dalam jadual pangkalan data dengan beberapa nilai yang telah ditetapkan untuk ujian dan pembangunan. Artikel ini akan memperkenalkan cara menggunakan fungsi data isian Laravel.

1. Persediaan

Sebelum menggunakan fungsi pengisian data Laravel, anda perlu mencipta jadual pangkalan data dan model Eloquent. Berikut ialah contoh mudah:

php artisan make:model User -m

Arahan di atas akan mencipta model app dan fail pemindahan pangkalan data User dalam direktori xxxx_xx_xx_xxxxxx_create_users_table.php. Kita perlu mentakrifkan struktur jadual dalam fail pemindahan:

public function up()
{
    Schema::create('users', function (Blueprint $table) {
        $table->bigIncrements('id');
        $table->string('name');
        $table->string('email')->unique();
        $table->timestamp('email_verified_at')->nullable();
        $table->string('password');
        $table->rememberToken();
        $table->timestamps();
    });
}

dan kemudian jalankan pemindahan pangkalan data:

php artisan migrate

Ini akan mencipta jadual data bernama users.

2. Mengisi data

Laravel menyediakan perintah db:seed untuk mengisi data. Kita boleh mencipta kelas Seeder dalam direktori database/seeds, mewarisi kelas IlluminateDatabaseSeeder dan melaksanakan kaedah run.

Berikut ialah contoh mudahUserSeeder.php:

use Illuminate\Database\Seeder;
use App\User;

class UserSeeder extends Seeder
{
    public function run()
    {
        factory(User::class, 50)->create();
    }
}

Kod di atas menggunakan corak kilang Laravel untuk menjana 50 User model dan menyimpannya ke dalam pangkalan data.

Dalam kaedah run, kita boleh menggunakan pembina pertanyaan Laravel dan model Eloquent untuk beroperasi pada pangkalan data. Dalam contoh ini, kami menggunakan fungsi factory untuk mencipta 50 contoh model User dan menyimpannya ke pangkalan data.

3. Panggil Seeder

Selepas mencipta kelas Seeder, kita perlu memanggilnya untuk mengisi data. Kita boleh memanggil semua data yang perlu diisi dalam fail database/seeds/DatabaseSeeder.php. Kelas ini ialah seeder utama, yang digunakan untuk memanggil kelas seeder lain.

use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    public function run()
    {
        $this->call(UserSeeder::class);
    }
}

Selepas memanggil kelas UserSeeder, kita boleh melaksanakan perintah db:seed melalui baris arahan untuk mengisi data:

php artisan db:seed

Arahan ini akan mencari semua secara automatik menentukan kelas Seeder dan menjalankan kaedah run mereka.

4. Gunakan Kilang

Dalam contoh di atas, kami menggunakan corak kilang Laravel untuk menjana 50 User contoh model. Corak kilang Laravel boleh membantu kami menjana data yang diperlukan untuk ujian dan pembangunan dengan mudah.

Kita boleh mencipta model menggunakan kaedah make dan create. Kaedah make digunakan untuk mencipta contoh model sementara yang tidak disimpan ke pangkalan data, dan kaedah create digunakan untuk mencipta tika model yang disimpan ke pangkalan data.

Dalam Laravel, kita boleh menggunakan kelas Factory untuk mentakrif, mendaftar dan menggunakan kilang. Penggunaan kelas Factory adalah sangat mudah Kita hanya perlu mencipta fail kilang dalam direktori database/factories dan mentakrifkan model dan atributnya melalui kaedah define. Berikut ialah contoh mudah UserFactory.php:

use Faker\Generator as Faker;
use App\User;

$factory->define(User::class, function (Faker $faker) {
    return [
        'name' => $faker->name,
        'email' => $faker->unique()->safeEmail,
        'password' => bcrypt('password'),
    ];
});

Dalam contoh ini, kami menggunakan kelas Faker untuk menjana data model rawak untuk mensimulasikan data pengguna sebenar. Kilang ini mentakrifkan tiga atribut: name, email dan password.

Apabila kita perlu menggunakan kilang ini, kita boleh menggunakan kod berikut:

use App\User;

$user = factory(User::class)->create();

Ini akan mencipta contoh model User baharu dan menyimpannya ke pangkalan data. Kami juga boleh menggunakan kaedah make untuk mencipta contoh model yang tidak disimpan ke pangkalan data:

use App\User;

$user = factory(User::class)->make();

Tata model ini akan mengandungi nilai sifat yang dijana secara rawak, yang boleh kami gunakan dalam ujian dan pembangunan.

5. Ringkasan

Laravel menyediakan fungsi pengisian data yang mudah. ​​Kami boleh menggunakan Seeder untuk menjana data ujian dan menggunakan mod kilang untuk menjana contoh model. Dengan ciri ini, kami boleh mengisi jadual pangkalan data dengan mudah untuk ujian dan pembangunan yang mudah.

Atas ialah kandungan terperinci Cara menggunakan fungsi data isian Laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn