使用Yii关系查询

时间:2011-12-15 05:44:16

标签: php activerecord yii

在ActiveRecord定义中定义相关模型时是否可以指定一个关系范围,该关系范围只允许那些模型相关联,其对应的列与连接表中的某些预定义标准匹配?

例如。让我们有一个带有字段的用户表:id(pk),username(pk),pwd_hash(text),pwd_salt(text)

和项目表:id(pk),itemData(text)

和关联表:id(pk),user_id(pk),item_id(pk),some_attribute(int)

现在我想定义一个多对多关系,以便用户模型有一个字段xitems,它只能为我提供some_attribute的值大于某个值y的项目。是否可以使用Yii ActiveRecord实现这样做。

我明白我可以定义一个与相关表相对应的模型,该模型与项目和用户都属于关系,并查询此表...但我正在寻找一种更简洁的方法。 [编辑]

可能我最好的选择是定义一个抽象内连接操作的模型方法。

1 个答案:

答案 0 :(得分:0)

我很确定您确实需要连接表的模型才能访问其示例所需的数据。如果没有连接表模型,AR将仅处理连接表(AFAIK)中的FK。

本文可能对您有所帮助:Accessing data in a join table with the related models