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编程网上资源导航
Oct 09 PHP
Snoopy类使用小例子
Apr 15 PHP
php cookie 作用范围?不要在当前页面使用你的cookie
Mar 24 PHP
php 判断访客是否为搜索引擎蜘蛛的函数代码
Jul 29 PHP
php导出excel格式数据问题
Mar 11 PHP
PHP把小数转成整数3种方法
Jun 30 PHP
浅析php工厂模式
Nov 25 PHP
微信公众号判断用户是否已关注php代码解析
Jun 24 PHP
PHP编程实现微信企业向用户付款的方法示例
Jul 26 PHP
PHP实现的mysql主从数据库状态检测功能示例
Jul 20 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
Mar 25 PHP
Aliyun Linux 编译安装 php7.3 tengine2.3.2 mysql8.0 redis5的过程详解
Oct 20 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
在PHP中实现Javascript的escape()函数代码
2010/08/08 PHP
PHP的cURL库功能简介 抓取网页、POST数据及其他
2011/04/07 PHP
PHP新手用的Insert和Update语句构造类
2012/03/31 PHP
zend framework配置操作数据库实例分析
2012/12/06 PHP
php使用正则表达式进行字符串搜索的方法
2015/03/23 PHP
帝国cms常用标签汇总
2015/07/06 PHP
php操作xml并将其插入数据库的实现方法
2016/09/08 PHP
Yii2实现多域名跨域同步登录退出
2017/02/04 PHP
php和js实现根据子网掩码和ip计算子网功能示例
2019/11/09 PHP
ExtJS GridPanel 根据条件改变字体颜色
2010/03/08 Javascript
AJAX使用了UpdatePanel后无法使用alert弹出脚本
2010/04/02 Javascript
jQuery 顺便学习下CSS选择器 奇偶匹配nth-child(even)
2010/05/24 Javascript
jQuery基本过滤选择器使用介绍
2013/04/18 Javascript
php实例分享之实现显示网站运行时间
2014/05/20 Javascript
jQuery.extend 函数及用法详细
2015/09/06 Javascript
Node.js的Web模板引擎ejs的入门使用教程
2016/06/06 Javascript
js检测离开或刷新页面时表单数据是否更改的方法
2016/08/02 Javascript
JavaScript运动框架 多物体任意值运动(三)
2017/05/17 Javascript
使用Vue-cli 3.0搭建Vue项目的方法
2018/06/07 Javascript
JS实现关键词高亮显示正则匹配
2018/06/22 Javascript
node-red File读取好保存实例讲解
2019/09/11 Javascript
Vue实现跑马灯效果
2020/05/25 Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
2020/07/28 Javascript
python添加模块搜索路径方法
2017/09/11 Python
搞清楚 Python traceback的具体使用方法
2019/05/13 Python
python框架django项目部署相关知识详解
2019/11/04 Python
学习Python爬虫的几点建议
2020/08/05 Python
世界上最好的旅行夹克:BauBax
2018/12/23 全球购物
日本最大的购物网站乐天市场国际版:Rakuten Global Market(支持中文)
2020/02/03 全球购物
初中三年学生的学习自我评价
2013/11/13 职场文书
保荐人的岗位职责
2013/11/19 职场文书
银行存款证明样本
2014/01/17 职场文书
《鸿门宴》教学反思
2014/04/22 职场文书
工程承包协议书
2014/10/20 职场文书
新教师2015年度工作总结
2015/07/22 职场文书
高并发下Redis如何保持数据一致性(避免读后写)
2022/03/18 Redis