Yii的Relational Active Record三张表连接查询
2024-10-14 01:09:01
需求如下:
查询book表信息,同时关联entitystags表,以entitystags的字段eid关联book的主键,再关联查询tags表,以entitystags表的tid字段关联tags表的主键id
同时读出这三张表的信息来,在Yii可以如下处理,先在relations方法中声明三张表的关系,在控制器中,以with表明渴求式调用,即可,代码如下:
在book的model文件中声明关系:
public function relations(){
return array(
'entitystags'=>array(self::HAS_MANY, 'EntityStag', 'eid', 'alias'=>'estag', 'select'=>'*'),
'tags'=>array(self::HAS_MANY, 'Stag', '' , 'alias'=>'stag' ,'on'=>'estag.tid=stag.id' , 'select'=>'title,id'),
);
}
控制器的调用:
$model=Book::model()->with("entitystags" , "tags")->findByPk($id);
最新文章
- TypeScript之面向对象初体验
- 开发unity DLL插件
- 重载赋值运算符 &;&; 对象
- <;s:select>;中list获取action中数据
- wdcp升级php版本到5.3,5.5
- js 鼠标事件的抓取代码
- unix fopen和fopen_s用法的比较
- Java Web开发介绍
- 编程策略类note
- Vue的组件
- Go 语言教程
- Spring AOP中 pointcut expression表达式解析
- [No0000110]Git9/9-自定义Git
- 【汇总】基于.NET平台常用的框架整理
- Vue.directive基础,在Vue模块开发中使用
- MongoDB资料大全
- 管道命令和xargs的区别
- 关于使用QTcpSocket的一些总结
- C++11新特性之五——可变参数模板
- Android系统架构(一)