敬业App开发 潜水
  • 2发帖数
  • 2主题数
  • 0关注数
  • 0粉丝
开启左侧

thinkphp6 模型的定义方式

[复制链接]
敬业App开发 发表于 2021-8-23 14:22:52 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
学习要点: 1.定义模型
2.设置模型
21. 模型的定义方式
本节课我们来学习模型篇章中的定义方法,设置以及一些基本的操纵。
一.定义模型
1. 定义一个和数据库表向匹配的模型;
class User extends Model
2. 模型会主动对应数据表,并且有一套自己的命名规则;
3. 模型类需要去除表前缀(tp_),采用驼峰式命名,并且首字母大写;
tp_user(表名) => User tp_user_type(表名) => UserType
4. 创建空模型后,我们可以在控制器调用,创建控制器DataModel.php;
5. 可以直接使用模型的名称User::*调用查询方法,比如select()等;
6. 如果没有代码提示,请和上一节一样,把5.1的注释复制过来;
class DataModel
{
public function index()
{
return json(User::select()); }
}
7. 如果担心设置的模型类名和PHP关键字冲突,可以开启应用类后缀;
8. 比如设置:ClassUserModel这种,需要更改文件名为UserModel.php; 9. 然后设置一下$name属性为指定user(表名)即可实现;
class UserModel extends Model {
protected $name = 'user';
}
二.设置模型
1. 默认主键为id,你可以设置其它主键,比如uid; protected $pk = 'uid';
2. 从控制器端调用模型操纵,如果和控制器类名重复,可以设置别名; use app\model\User as UserModel;

3. 在模型定义中,可以设置其它的数据表; 4.
protected $table = 'tp_one';
模型和控制器一样,也有初始化,在这里必须设置 static 静态方法;
//模型初始化
protected static function init() {
//第一次实例化的时候执行 init
echo '初始化User模型'; }
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

猜你喜欢
在线客服邮箱
wxcy#wkgb.net

邮箱地址#换为@

Powered by 创意电子 ©2018-现在 专注资源实战分享源码下载站联盟商城