📜  laravel 在模型上创建 - PHP (1)

📅  最后修改于: 2023-12-03 15:02:36.749000             🧑  作者: Mango

在 Laravel 模型上创建

在 Laravel 中,模型是与数据库表相关联的 PHP 类。定义模型可使您与数据库表进行交互,包括检索和操作数据。在本文中,我们将探讨在 Laravel 模型上创建的过程。

步骤 1:创建模型

要创建模型,可以运行以下 Artisan 命令:

php artisan make:model ModelName

这个命令将在 app 目录下创建一个 ModelName.php 文件,其中包含了一个名为 ModelName 的模型类。您可以将模型类文件名与表名保持一致或者任意指定一个。

步骤 2:定义模型类

在模型类中,您可以定义一个属性 $table,该属性用于指定与模型相关联的表名。例如:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class ModelName extends Model
{
    protected $table = 'table_name';
}

在这个示例中,ModelName 模型与 table_name 数据库表相关联。如果未指定 $table 属性,则 Laravel 将假定对应的表名与模型类名相同且为复数形式,即它将默认查找 model_names 表。

步骤 3:定义主键

您可以在模型中使用 $primaryKey 属性来指定相关联的表中的主键列名。如果您未定义主键,则 Laravel 将默认使用 id 作为主键。例如:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class ModelName extends Model
{
    protected $table = 'table_name';
    protected $primaryKey = 'custom_primary_key';
}

在这个示例中,ModelName 模型使用名为 custom_primary_key 的列作为主键列。

步骤 4:指定时间戳

当您创建一个数据表时,默认情况下,Laravel 将自动添加 created_atupdated_at 两个时间戳列。该功能可使您轻松地跟踪数据的创建和修改时间。如果您需要禁用此自动时间戳功能,则可以将模型属性 $timestamps 设置为 false。例如:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class ModelName extends Model
{
    protected $table = 'table_name';
    protected $timestamps = false;
}

在此示例中,ModelName 模型禁用了自动添加时间戳功能。

结论

在 Laravel 模型上创建可以非常容易地进行,您可以指定表名、主键、时间戳等参数。Laravel 的 Eloquent ORM 已经在这个领域表现出色,可以在各种 PHP 项目中使用。