Rumah  >  Artikel  >  rangka kerja php  >  Cara menggunakan penjana struktur pangkalan data Laravel

Cara menggunakan penjana struktur pangkalan data Laravel

PHPz
PHPzasal
2023-04-14 15:34:15743semak imbas

Laravel ialah rangka kerja PHP yang sangat popular yang menyediakan alat ORM (Object Relational Mapping) yang berkuasa yang membolehkan pembangun mengurus pangkalan data dengan lebih mudah. Menggunakan Laravel ORM, anda boleh menentukan struktur jadual pangkalan data melalui kod dan bukannya menulis pernyataan SQL secara manual. Laravel juga menyediakan alat yang sangat mudah - penjana struktur pangkalan data, yang secara automatik boleh menjana struktur jadual pangkalan data yang sepadan berdasarkan fail model. Artikel ini menerangkan cara menggunakan penjana skema pangkalan data Laravel.

1. Cipta fail model

Dalam Laravel, fail model biasanya disimpan dalam subdirektori app di bawah direktori Models. Perkara pertama yang perlu dilakukan ialah mencipta fail model yang sepadan dengan jadual pangkalan data. Boleh dibuat melalui arahan Artisan:

php artisan make:model Models/User

Ini akan mencipta fail model bernama app/Models dalam direktori User.php. Dalam fail ini, anda boleh menggunakan Eloquent ORM untuk mentakrifkan struktur jadual pangkalan data seperti berikut:

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    protected $table = 'users';

    protected $fillable = [
        'name',
        'email',
        'password',
    ];
}

Dalam contoh ini, kami mentakrifkan model User, yang sepadan dengan jadual users. Kami juga mentakrifkan atribut $fillable untuk mengehadkan medan yang boleh diberikan kumpulan.

2. Cipta jadual data

Setelah fail model dibuat, kita boleh menggunakan perintah Artisan untuk menjana jadual data yang sepadan:

php artisan migrate

Ini akan menjadi dalam pangkalan data Cipta jadual users Struktur jadual ini akan sepadan dengan model User yang kami takrifkan.

3. Hasilkan struktur pangkalan data

Dengan fail model dan jadual data, kita boleh menggunakan penjana struktur pangkalan data Laravel untuk menjana struktur pangkalan data yang sepadan. Masukkan arahan berikut dalam konsol:

php artisan make:migration create_users_table --table=users

Ini akan mencipta fail migrasi bernama database/migrations dalam direktori create_users_table. Kita boleh mentakrifkan struktur jadual dalam fail ini menggunakan penjana struktur pangkalan data Laravel. Berikut ialah coretan kod penjana biasa:

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

Dalam contoh ini, kami mencipta jadual Schema::create melalui kaedah users. Kelas Blueprint menyediakan banyak kaedah untuk mentakrifkan struktur jadual, seperti string, integer, boolean, timestamp dan sebagainya.

Setelah struktur jadual ditakrifkan, kita boleh menjalankan perintah berikut untuk melaksanakan pemindahan:

php artisan migrate

Ini akan mencipta jadual yang sepadan dengan fail migrasi yang kami takrifkan.

4. Kesimpulan

Apabila membangun dengan Laravel ORM, menggunakan penjana struktur pangkalan data boleh meningkatkan kecekapan pembangunan. Ia menghapuskan kebosanan menulis pernyataan SQL secara manual dan juga memastikan konsistensi antara jadual data dan fail model. Struktur jadual data boleh dikemas kini dengan mudah dengan hanya mengubah suai fail model. Dalam Laravel, ini semua sangat mudah dilakukan, hanya ikuti langkah mudah.

Atas ialah kandungan terperinci Cara menggunakan penjana struktur pangkalan data 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