thinkphp中难道有语法定义一对多或一对一的关系吗

tp_2015_7 2015-06-13 06:28:29
下面的源码是一个家伙讲的,下面红色部分是我不理解的地方,请看:
<?php
/**
* 用户与用户信息表关联模型
*/
Class UserRelationModel extends RelationModel {

//定义主表名称
Protected $tableName = 'user';

//定义用户与用户信处表关联关系属性
Protected $_link = array(
'userinfo' => array(
'mapping_type' => HAS_ONE,// 这里的HAS_ONE指的是一对一的关系,HAS_ONE是thinkphp语法 还是说是自定义的,如果是自定义的,这里的HAS_ONE实质是什么,据说HAS_MANY是一对多,所以太让人不可思议了,这里定义这玩意是为了什么呢
'foreign_key' => 'uid' //这里是外键,这个地方的作用是啥?
)
);

/**
* 自动插入的方法
*/
Public function insert ($data=NULL) {
$data = is_null($data) ? $_POST : $data;
return $this->relation(true)->data($data)->add();
}
}
?>
...全文
121 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Seven小七 2015-06-15
  • 打赏
  • 举报
回复
就是关联表。一对多,可以理解成主表对从表的操作。 多对1是从表对主表的操作。 TP的多对多模型不建议使用,有BUG。 一般处理这种关联关系,我还是建议使用拼接SQL语句来操作较好掌握。
tp_2015_7 2015-06-14
  • 打赏
  • 举报
回复
呵呵,一下子把你们难住了吧,哈哈!

21,873

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧