转:关于yii的relations

关于yii的relations

.

太郁闷了,yii的relations里self::BELONGS_TO默认是用当前指定的键跟关联表的主键进行join,例如:

return array(
'reply' => array(self::BELONGS_TO, 'BookPostReply', 'postid'),
);

默认生成的sql是 on id = postid,id是BookPostReply的主键。
但今天我遇到的需求却是需要生成 on BookPostReply.postid = t.postid,不去关联主键,而且关联其中一个字段的值,怎么搞都搞不定,论坛也翻了个遍,不得不说,yii的论坛搜索功能真的很烂,每次用都要从一 堆的内容里过滤信息,还不见的能找到自己想要的,而且手册也比较简单,对这些东西没有做比较深入的解答。

后来无意中看到有个on的属性,刚好跟sql里的on一样,于是抱着试试的想法,在配置里加了上去

return array(
'reply' => array(self::BELONGS_TO, 'BookPostReply', 'postid', 'on' => 't.postid=reply.postid'),
);

看调试信息里的SQL语句,发现yii生成了一条 on id = postid and t.postid=reply.postid 这样的语句,看到这就已经明白这个东西的作用了,于是将postid清空,改成如下:

return array(
'reply' => array(self::BELONGS_TO, 'BookPostReply', '', 'on' => 't.postid=reply.postid'),
);

终于将默认的on重置掉了^_^,yii确实很灵活,可惜一直没有一份详细的开发手册,导致很多时候要走不少弯路,希望以后手册能够更加完善起来吧!

STM实战开发(13):STM32开发:使用光敏电阻检测光照强度 光敏电阻(LDR)是一种电阻值受光照强度影响的半导体材料。当光照强度增大时,光敏电阻的电阻值降低;而当光照强度减小时,电阻值则增大。光敏电阻的电阻变化与入射光的强度之间并不是线性关系,而是呈对数型的变化。LDR通常由硫化镉(CdS)或其他半导体材料构成,材料对不同波长的光有不同的响应特性。一般而言,光照强度越强,光敏电阻的电阻值越低,反之则越高。本文介绍了如何使用STM32与光敏电阻(LDR)结合,进行光照强度检测的实现方法。通过配置STM32的ADC模块,读取光敏电阻的电压信号,并根据电压计算光照强度。 阅读详情

相关推荐

【Android】条形码/二维码扫描——ZXing源码分析

正在更新中 针对3.2.1版本源码 与其他版本代码可能会有出入,但核心思想基本不变。 首先从com.google.zxing.client.android包中的目录结构分析:Book:这个文件夹中有5个类: BrowseBookListener 实现了adapter的点击事项响应,通过获取ISBN,然后跳转到Google books中查询响应的详细信息。 SearchBookContents

年轻的学徒 2453

YII中CHtml::listData方法第一个参数(models)的使用

public static array listData(array $models, string $valueField, string $textField, string $groupField='') $models array 模型对象的列表。这个参数也可以是一个关联的数组(例如CDbCommand::queryAll的结果)。 问题描述: textField($model,

大头爸爸的博客 8049

Tushare使用教程

@Tushare简易教程 Python财经数据接口Tushare 最近在看量化分析有关的东西,然后第一步先了解的就是如何获取股票交易数据。发现大部分教程都是关于Tushare的,于是在这里简单的介绍一下Tushare的用法吧。目前tushare有免费版本和升级的需要付费的Pro版本。大多数教程写的都是免费版本,但是pro版本提供的数据更多,但是由于本人入坑还不深,暂时还是用的免费版本,但是每次使用都收到提示,“本接口即将停止更新,请尽快使用Pro版接口:https://tushare.pro/documen

kuangzhi9124的博客 2万+

yii findall 使用方法

$post = $POST::model()->findAll(); //列出所有post model中的数据, 读取 foreach( $post as $record) { print( $record->filedName) ; // filedName 是表中的列名 }

poly_sunny的专栏 3672

【AIOPS实战】Dify+Zabbix:构建智能告警分析助手的核心架构与实现

本文详细介绍了如何利用Dify平台与Zabbix-MCP接口构建智能告警分析助手,实现自然语言查询告警、智能分析和报告生成。该系统通过AIOPS技术显著提升运维效率,支持中英文混合查询、自动根因分析,并内置多种优化方案确保稳定可靠。

weixin_29238147的博客 319

Stata: 空间面板数据模型及Stata实现

  作者:游万海 (福州大学) Stata 连享会: 知乎 | 简书 | 码云 | 优快云   来源:Golgher 和 Voss (2016)   1. 背景介绍 由于面板数据模型所具有的众多优点 (刻画个体异质性,减弱模型共线性和增加自由度等),其被广泛应用于实证计量中。在 「 Stata: 面板数据模型-一文读懂」 文中,我们已对面板数据模型进行了介绍。 然而,当研究样本涉及到多个...

Stata连享会 7万+

Yii中的relations方法

以Blog示例: 重点看注释 User类中的relations方法如下  public function relations() { return array( 'posts' => array(self::HAS_MANY, 'Post', 'author_id', 'order'=>'posts.update_time DESC', 'with'=>'co

LittleBearwmx的专栏 8152

modelsim软件安装教程及踩坑(极简版)

1.安装的网盘链接:链接:https://pan.baidu.com/s/1ltUfssyXlCnqDmLhWyhlwA提取码:jery 2.步骤(参考博文):https://blog.youkuaiyun.com/weixin_42693097/article/details/90523692?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163521788716780357213801%2522%252C%2522scm%2522%253A%2522

subtitle_的博客 3780

Yii2 Save Relations Behavior 使用教程

Yii2 Save Relations Behavior 使用教程 1. 项目介绍 Yii2 Save Relations Behavior 是一个用于 Yii2 框架的扩展,它自动化了关联的 Active Record 模型的验证与保存过程。该插件支持 hasMany() 和 hasOne() 关系,能够处理现有及新增的相关模型。通过集成此行为,开发者可以简化在 Active Record 对象...

gitblog_00014的博客 468

redhawk:Low Power Analysis

1.rush current与switch cell 在standby状态下为了控制leakage power我们选择power gating的设计方式,使用power switch cell关闭block/power domain的电源。 power switch的基本介绍可见: 低功耗设计-Power Switch power switch的table中有四种状态,对应block工作、待机和上电,下电。low power analysis主要分析上电的过程。 上电过程可以看做mos电容

m0_61544122的博客 3206

基于STM32、HAL库的RN8209D电能计量芯片驱动程序设计

/ 假设电压互感器变比为220V:0.5V,电流互感器变比为20A:5mA。// 电压ADC原始值。// 电流ADC原始值。// 有功功率(W)// 电能(kWh)

corlin6688的博客 470

Yii2 Save Relations Behavior 项目常见问题解决方案

Yii2 Save Relations Behavior 项目常见问题解决方案 项目基础介绍 Yii2 Save Relations Behavior 是一个用于 Yii2 框架的开源扩展,旨在自动验证和保存相关的 Active Record 模型。该项目支持 hasMany() 和 hasOne() 关系,适用于现有和新的相关模型,并且支持复合主键。此外,从 1.5.0 版本开始,相关记录可以与...

gitblog_00956的博客 612

复旦微FMSH_Procise安装全流程详解:从环境配置到实战避坑指南

通过本文的全流程解析+实战技巧,开发者可快速掌握Procise在复旦微芯片开发中的核心应用。未来随着AKConv轻量级架构(参考往期文章)等创新技术的融入,国产芯片开发生态将更加完善。立即关注本专栏,获取最新多镜像切换指南与Linux SDK实战教程!扩展阅读复旦微在线升级BOOT.BIN全解析H7-TOOL实现复旦微脱机烧录(注:本文实验环境为Windows 10 x64 + FMQL45T-CORE开发板,部分操作可能因版本更新调整)立即行动下载本文配套配置文件:[GitHub链接]加入技术交流群。

QQ_778132974的博客 3243

关于yii的relations 与CDbCriteria类

yii的relations里self::BELONGS_TO默认是用当前指定的键跟关联表的主键进行join,例如: return array( 'reply' => array(self::BELONGS_TO, 'BookPostReply', 'postid'), ); 默认生成的s...

154

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

yii的relations方法的使用

http://blog.youkuaiyun.com/xinqingch/article/details/8219330 通过在 relations() 中声明这些相关对象,我们就可以利用强大的 Relational ActiveRecord (RAR) 功能来访问资讯的相关对象,例如它的作者和评论。不需要自己写复杂的 SQL JOIN 语句。 前提条件

loongwong2011的博客 2160

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Yii2 Active Record Save Relations Behavior 项目推荐

Yii2 Active Record Save Relations Behavior 项目推荐 项目基础介绍和主要编程语言 Yii2 Active Record Save Relations Behavior 是一个用于 Yii2 框架的开源项目,主要用于自动验证和保存相关的 Active Record 模型。该项目的主要编程语言是 PHP,特别适用于使用 Yii2 框架进行开发的开发者。 项目核...

gitblog_00806的博客 482

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Yii1学习笔记之relations

格式: 'VarName'=>array('RelationType', 'ClassName', 'ForeignKey', ...additional options) 需要弄清楚的几点: 1,VarName指什么?  详见下面例2。 2,RelationType。一共有4种,分别为self::HAS_MANY, self::BELONGS_TO, self::MANY_MANY,

yiqing666的专栏 683

Yii中relations的用法

class AmsPriceNewcar extends AmcPriceNewcar {     public $mileage; public function relations() { return array( 'm' => array(self::BELONGS_TO, 'AmcModelInfo', '' , 'on

南方有岛 956

推荐项目:Yii2 Active Record Save Relations Behavior —— 实现关联模型的自动化验证与保存

推荐项目:Yii2 Active Record Save Relations Behavior —— 实现关联模型的自动化验证与保存 在开发基于Yii2框架的应用时,高效处理复杂的数据关系常常是开发者面临的一大挑战。为了解决这一痛点,我们发现了一个宝藏开源项目——Yii2 Active Record Save Relations Behavior。这个插件通过自动验证和保存相关的Active Re...

gitblog_00367的博客 998

关于yii的relations

关于yii的relations yii的relations里self::BELONGS_TO默认是用当前指定的键跟关联表的主键进行join,例如: return array( 'reply' => array(self::BELONGS_TO, 'BookPostReply', 'postid'), ); 默认生成的sql是 on ...

weixin_30877181的博客 82

php关联规则,Yii中的relations数据关联查询及统计功能用法详解

本文实例讲述了Yii中的relations数据关联查询及统计功能用法。分享给大家供大家参考,具体如下:关联查询,Yii 也支持所谓的统计查询(或聚合查询)。 它指的是检索关联对象的聚合信息,例如每个 post 的评论的数量,每个产品的平均等级等。 统计查询只被 HAS_MANY(例如,一个 post 有很多评论) 或 MANY_MANY (例如,一个 post 属于很多分类和一个 category...

weixin_34463209的博客 203

yii分析 yii的 view语法和model中的relations

1.View中的语法.Yii在view里使用自己的语法,常用的是if语句和foreach语句,跟php的语法非常相似.if的语法为:?View Code PHP 1234567 if ($foo): ?> echo $foo; ?> elseif ($bar): ?> echo $bar

hy840429的专栏 1930

Yii框架中ActiveRecord使用Relations

Yii框架中ActiveRecord使用Relations 前提条件 在组织数据库时,需要使用主键与外键约束才能使用ActiveReocrd的关系操作; 场景 申明关系 两张表之间的关系无非三种:一对多;一对一;多对多; 在AR中,定义了四种关系: 关系 定义 例子 BELONGS_TO A和B的关系是一对多,那么B属于A

一个人,在路上 1968

Yii的relations方法的使用

通过在 relations() 中声明这些相关对象,我们就可以利用强大的 Relational ActiveRecord (RAR) 功能来访问资讯的相关对象,例如它的作者和评论。不需要自己写复杂的 SQL JOIN 语句。

yangzaiqiu1986814的专栏 427
上一篇: 创新在90后身上的希望将远大过80后的寂寞群体
下一篇: Yii框架中ActiveRecord使用Relations
stevecj
博客等级 码龄25年 0粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值