Yii model 中使用表与表之间关联运用(relations)

http://blog.163.com/wangzhenbo85@126/blog/static/101363282201301092526559/


总结: 名词解释

可能存在两个活动记录对象之间的关系有四种类型:

  • BELONGS_TO: 例如,成员属于一个团队;
  • HAS_ONE: 例如,成员有个人资料;
  • HAS_MANY: 例如,一个团队有很多成员;
  • MANY_MANY: 例如,成员有很多的技巧和技能是属于这个成员的;
其余数组元素的名称-值,可以指定其他选项:
  • 'select': string|array, 被选中的列列表。默认值为 '*',这意味着是所有列。 如果它们出现在一个表达式中(例如: COUNT(relationName.name) AS name_count)。
  • 'condition': string, WHERE子句。 默认值为空。 注意,列引用需要加入'relationName'前缀 。(例如:relationName.age>20)
  • 'order': string, ORDER BY子句。 默认值为空。 注意,列引用需要加入'relationName'前缀 。(例如:relationName.age DESC)
  • 'with': string|array, 应该与这个对象一起装载的子对象相关名单。 注意,这仅仅是延迟加载,而不是预先加载。
  • 'joinType': 联接类型。 默认值为‘LEFT OUTER JOIN’。
  • 'alias': 关系与关联表的别名。 它默认为null, 意味着表的别名与关系名称相同。
  • 'params': 参数绑定到要生成的SQL语句上。 这应作为名称-值的数组。
  • 'on': ON 子句。 此处指定的条件将追加到使用 AND 运算符的联接条件。
  • 'index': 其值应作为存储相关的对象的数组的键的列的名称。 此选项仅适用于, HAS_MANY 和 MANY_MANY 关系。
  • 'scopes': 应用范围。在单一的范围情况下可以像'scopes'=>'scopeName', 在多个作用域范围情况下可以使用数组像这样'scopes'=>array('scopeName1','scopeName2')。 此选项自版本 1.1.9 可用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值