laravel框架之模型(model)

1. Eloquent ORM(对象关系模型)

    laravel 自带的, 提供了一个美观的、简单的连接数据库数据库ActiveRecord实现,每张数据表都对应一个与该表交互的“Model模型”,模型允许在表中进行查询,插入,更新和删除操作


2.AR:ActiveRecord(活动记录):

      是一种领域模型模式,特点是一个模型类对应关系型数据库汇总的一个表,而模型类的一个实例对应表中的一行记录

3、AR模式三个核心(映射)
(1)每个【数据表】:与数据表进行交互的Model【模型】映射(实例化模型)
(2)记录中的【字段】:与模型类的【属性】映射(给属性赋值)
(3)表中的每个【记录】:与一个完整的请求实例映射(具体的CURD操作)

4.模型定义位置:app/Models
5.命名规则:表名.php   (首字母大写)
6.创建模型

php artisan make:model Models/User

7.定义模型注意事项?
第一:(必做)定义一个$table属性,值是不要前缀的表名,如果不指定则使用类名的复数形式作为表名。如果模型为Member模型在不指定table属性的情况下,其默认会去找members表。修饰词:protected
第二:(可选)定义$primaryKey属性,值是主键名称,如果需要使AR模式的find方法,则可能需要指定主键(Model::find(n)),在主键字段不是id的时候则需要指定主键。修饰词:protected
第三: (可选)定义$timestamps属性,值是false,如果不设置为false,则默认会操作表中的created_at和updated_at字段,我们表中一般没有这两个字段,所以设置为false,表示不要操作这两个字段。修饰词:public
第四:(可选)定义$fillable属性,表示使用模型插入数据时,允许插入到数据库的字段信息。修饰词:protected

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;

class User extends Model{
    // 定义模型关联的数据表名(一个模型只操作一个表)
    protected $table = 'user';
    // 定义主键
    protected $primaryKey = 'id';
    // 定义禁止操作时间
    public $timestamps = false;
    // 设置允许写入的数据字段
    protected $fillable = ['uid', 'uname', 'password', 'sex'];
}

8.使用的两种形式
(1)不实例化,直接用类名。举例  User::get();
(2)实例化。     举例: $user = new User(); $user -> get();

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值