Yii2中多表关联查询hasOne hasMany的方法


Posted in PHP onFebruary 15, 2017

表positionContent

id position_id content_title content_id is_recommend list_sort update_time create_time
10 14 大成成长 160910 1 1 2017-02-09 11:51:56 2017-02-09 11:51:56
11 15 创新成长 160910 1 1 2017-02-09 11:52:08 2017-02-09 11:52:08

position表

id name title type num remark update_time create_time
14 列表推荐一 五星推荐 1 3 2017-02-09 00:00:00 2017-02-09 00:00:00
15 列表推荐二 热销基金 1 4 2017-02-09 00:00:00 2017-02-09 00:00:00

positionContent表的position_id对就position表的id。positionContent跟position是一对一的关系,反过来则是多对一。

model

class PositionContent extends \yii\db\ActiveRecord
{
...
 public function getPosition(){
  return $this->hasOne(Position::className(), ['id'=>'position_id']);
 }
...

然后在Controller调用,这样就能拿到position表中的数据了。

class TestController extends BackendBaseController
{
 public function actionIndex()
 {
  $data = PositionContent::findOne(10);
  $position = $data->position;
 }
 }

其实hasOne是执行了两次查询,并不是真正的连表查询。

SELECT * FROM `position_content` WHERE `id`=10
SELECT * FROM `position` WHERE `id`='14'

以上所述是小编给大家介绍的Yii2中多表关联查询hasOne hasMany,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
php入门学习知识点三 PHP上传
Jul 14 PHP
JS中encodeURIComponent函数用php解码的代码
Mar 01 PHP
解析yii数据库的增删查改
Jun 20 PHP
php判断一个数组是否为有序的方法
Mar 27 PHP
php curl 获取https请求的2种方法
Apr 27 PHP
PHP检测用户语言的方法
Jun 15 PHP
详解WordPress中用于更新和获取用户选项数据的PHP函数
Mar 08 PHP
PHP实现的登录,注册及密码修改功能分析
Nov 25 PHP
PHP重定向与伪静态区别
Feb 19 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
Dec 21 PHP
微信公众平台开发教程⑥ 微信开发集成类的使用图文详解
Apr 10 PHP
[原创]PHP global全局变量经典应用与注意事项分析【附$GLOBALS用法对比】
Jul 12 PHP
php+Memcached实现简单留言板功能示例
Feb 15 #PHP
thinkphp3.2中实现phpexcel导出带生成图片示例
Feb 14 #PHP
PHP中Trait及其应用详解
Feb 14 #PHP
php数组指针操作详解
Feb 14 #PHP
PHP中include()与require()的区别说明
Feb 14 #PHP
php中的抽象方法和抽象类
Feb 14 #PHP
PHP静态成员变量和非静态成员变量详解
Feb 14 #PHP
You might like
探讨如何使用SimpleXML函数来加载和解析XML文档
2013/06/07 PHP
解析php入库和出库
2013/06/25 PHP
PHP实现动态web服务器方法
2015/07/29 PHP
php安装扩展mysqli的实现步骤及报错解决办法
2017/09/23 PHP
在Laravel中使用MongoDB的方法示例
2019/11/11 PHP
ASP.NET jQuery 实例11 通过使用jQuery validation插件简单实现用户登录页面验证功能
2012/02/03 Javascript
JS简单实现文件上传实例代码(无需插件)
2013/11/15 Javascript
js判断字符是否是汉字的两种方法小结
2014/01/03 Javascript
创建你的第一个AngularJS应用的方法
2015/06/16 Javascript
JavaScript中将数组进行合并的基本方法讲解
2016/03/07 Javascript
超实用的JavaScript代码段 附使用方法
2016/05/22 Javascript
jQuery插件 Jqplot图表实例
2016/06/18 Javascript
轻松掌握JavaScript代理模式
2016/08/26 Javascript
JS中如何实现Laravel的route函数详解
2017/02/12 Javascript
SpringMVC简单整合Angular2的示例
2017/07/31 Javascript
Javascript Promise用法详解
2018/05/10 Javascript
AngularJs分页插件使用详解
2018/06/30 Javascript
vue 自定义提示框(Toast)组件的实现代码
2018/08/17 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
2020/09/16 Javascript
Python实现简单HTML表格解析的方法
2015/06/15 Python
python二分查找算法的递归实现方法
2016/05/12 Python
Python按行读取文件的简单实现方法
2016/06/22 Python
Python3.6简单操作Mysql数据库
2017/09/12 Python
使用 Python 实现微信公众号粉丝迁移流程
2018/01/03 Python
python pygame实现方向键控制小球
2019/05/17 Python
Python通过文本和图片生成词云图
2020/05/21 Python
pycharm不以pytest方式运行,想要切换回普通模式运行的操作
2020/09/01 Python
canvas实现图片马赛克的示例代码
2018/03/26 HTML / CSS
塔吉特百货公司官网:Target
2017/04/27 全球购物
幼师自我鉴定范文
2013/10/01 职场文书
员工自我鉴定
2013/10/09 职场文书
给水工程专业毕业生自荐信
2014/01/28 职场文书
《一件运动衫》教学反思
2014/02/19 职场文书
秋天的雨教学反思
2014/04/27 职场文书
车间核算员岗位职责
2014/07/01 职场文书
2017年寒假少先队活动总结
2016/04/06 职场文书