一、定义模型
- 定义一个和数据库表相匹配的模型
- 模型会自动对应数据表,有一套自己的命名规则
- 模型类型需要去除表前缀,采用驼峰式命名,并且首字母大写
- 创建空模型后,我们可以在控制器调用,创建控制器 DataModel.php
- 直接使用模型的名称 User:😗 调和查询方法,比如 select() 等
- 如果担心设置的模型类名和 PHP 关键字冲突,可以开启应用类后缀
- 比如设置一下 $name 属性为指定 user(表名) 即可实现
<?php
namespace app\model;
use think\Model;
class DataModal extends Model
{
portected $name = 'user';
public function index()
{
return json(User::select());
}
}
二、设置模型
- 默认主键为 id,你可以设置其它主键,比如 uid:
protected $pk = 'uid';
- 从控制器端调用模型操作,如果和控制器类名重复,可以设置别名
use app\model\User as UserModel;
- 在模型定义中可以设置其它的数据表
protected $table = 'tp_one';
- 模型和控制器一样,也有初始化,在这里必须设置 static 静态方法
protected static function init()
{
echo '初始化 User 模型';
}