Пакет DBML to Laravel автоматично генерує моделі Eloquent та міграції безпосередньо з діаграм DBML, включаючи заповнювальні властивості, визначені зв'язки та інше. Файли DBML також можна візуалізувати у вигляді діаграм бази даних, що слугує документацією для полегшення знайомства розробників з моделлю даних програми.
Пакет DBML to Laravel може значно прискорити ваш робочий процес та забезпечити синхронізацію через централізований інструмент конфігурації бази даних. Наступний приклад з README пакета демонструє, як він працює на основі файлу .dbml
зі згенерованими моделями:
Table users {
id int [pk, increment]
name varchar
email varchar [unique]
password varchar
created_at datetime
updated_at datetime
}
Table posts {
id int [pk, increment]
user_id int [ref: > users.id]
title varchar
content text
created_at datetime
updated_at datetime
}
Ref: posts.user_id > users.id
Використовуючи наведений вище DBML-файл і команду generate:dbml
, ось приклад файлу моделі Post.php
:
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class Post extends Model
{
use HasFactory;
protected $fillable = [
'user_id',
'title',
'content',
];
public function user(): BelongsTo
{
return $this->belongsTo(User::class);
}
}
Додаткову інформацію про цей пакет, повні інструкції з установки та доступ до кодів на GitHub можна знайти там. Також, щоб ознайомитися з мовою розмітки бази даних, перегляньте документацію DBML.