TP6.0 一对一模型关联 belongsTo 相对关联(反向关联)
2024-09-02
36
1. 创建数据表
一对一反向关联使用率很高
附表关联主表称为反向关联,又称为相对关联(tp官方手册这样叫)
-- 分类表
CREATE TABLE `category` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',
`name` varchar(255) DEFAULT NULL COMMENT '分类名称',
`sort` int(11) DEFAULT NULL COMMENT '分类排序',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
INSERT INTO `category` VALUES (1, 'Java', 0);
INSERT INTO `category` VALUES (2, 'Vue', 0);
-- 文章表
CREATE TABLE `article` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`category_id` int(11) DEFAULT '0',
`title` varchar(255) DEFAULT NULL,
`content` text,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
INSERT INTO `article` VALUES (1, 0, 'PHP数据类型', '文章内容01');
INSERT INTO `article` VALUES (2, 1, 'Java常量池', '文章内容02');
INSERT INTO `article` VALUES (3, 2, 'Vue Cli 4 引入图片地址', '文章内容03');
2. 文章模型定义一对一相对关联方法
public function category()
{
/**
* belongsTo('关联模型', '当前模型外键', '关联模型主键');
*
* 第一个参数
* app\model\Category 关联的模型类名(分类表模型)
*
* 第二个参数
* category_id 外键字段,默认的外键名规则是关联模型名+_id(文章表外键字段)
*
* 第三个参数
* id 关联模型主键,默认是关联模型的 $pk 值(分类表主键字段)
*/
return $this->belongsTo(Category::class, 'category_id', 'id');
}
同 hasOne()" class="reference-link" target="_blank">3. belongsTo() 也支持额外的方法 同 hasOne()
更新于:2个月前public function category()
{
/**
* belongsTo('关联模型', '当前模型外键', '关联主键');
*/
return $this->belongsTo(Category::class, 'category_id', 'id')->bind([
'name', 'sort'
]);
}
赞一波!
相关文章
- 【说站】java并发模型中的两种锁
- 【说站】java内存模型的组成
- 【说站】Java内存模型的并发处理
- java 安全沙箱模型详解
- TP6.0 模型获取器
- TP6.0 模型的关联删除
- TP6.0 模型JSON字段的使用 【系统配置表 key-value】
- TP6.0 一对一模型关联 hasOne
- TP6模型类在PhpStorm中没有方法提示
- ThinkPHP6.0 模型搜索器的使用
- TP6.0 模型搜索器
- 如何在 Django 中创建抽象模型类?
- 区块链模型解析:公有链、私有链与联盟链全面解读
- 订单履约系统的概念模型
- 使用Java编写一个简易的区块链概念模型代码
- 在Windows PC本地搭建类似ChatGPT的AI模型和交互式UI图文教程
- 特征工程:从数据到模型的桥梁——提升机器学习模型性能的关键步骤
- 谷歌推出交互生成式Genie模型可以创造2D交互游戏画面
- 大分类显示自定义模型字段的方法
- 为不同的模型栏目指定不同的样式
文章评论
评论问答