在 Laravel 中,数据库模型是表示和处理数据库表中数据的类。要定义一个数据库模型,你需要遵循以下步骤:
YourModel
替换为你想要的模型名称:php artisan make:model YourModel
这将在 app/Models
目录下生成一个新的模型文件,例如 YourModel.php
。
YourModel
的类。这个类继承自 Illuminate\Database\Eloquent\Model
类,这是 Laravel 中用于表示数据库表的基类。namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class YourModel extends Model
{
// 模型代码
}
protected $table
属性来定义模型对应的数据库表名。例如,如果你的模型对应名为 your_table
的表,你可以这样定义:protected $table = 'your_table';
$fillable
属性,该属性是一个数组,包含一个模型中所有可批量赋值的字段。例如:protected $fillable = ['field1', 'field2', 'field3'];
这将告诉 Laravel,只有 field1
、field2
和 field3
这三个字段可以被批量赋值。
User
模型和一个 Post
模型,一个用户可以有多篇文章,你可以在 Post
模型中定义一个 user
方法来表示这种关系:public function user()
{
return $this->belongsTo(User::class);
}
同样,你也可以在 User
模型中定义一个 posts
方法来表示用户拥有多篇文章的关系:
public function posts()
{
return $this->hasMany(Post::class);
}
现在你已经成功定义了一个 Laravel 数据库模型。你可以使用 Eloquent ORM(对象关系映射)来操作数据库中的数据。例如,你可以使用以下代码创建、读取、更新和删除记录:
// 创建记录
$post = new Post(['title' => 'My first post', 'content' => 'This is the content of my first post.']);
$post->user()->associate($user);
$post->save();
// 读取记录
$post = Post::find(1);
// 更新记录
$post->title = 'Updated title';
$post->save();
// 删除记录
$post->delete();