Yii连接除PK之外的列上的表

时间:2014-02-06 00:54:38

标签: activerecord yii

我正在使用Gallery Manager扩展程序,该扩展程序的Gallery模型与GalleryPhotos模型的一对多关系相关联(gallery_photo.gallery_id FK to gallery.id)。

我有一个产品模型,我想加入一个具有一对一关系的Gallery模型。

如果我不想修改Gallery表(添加FK),我将如何定义这样的关系。 我想到的一个选项是在我的Products表中添加一个gallery_id字段,该字段指向Gallery-> id但是如何在Products模型文件中定义关系?

1 个答案:

答案 0 :(得分:0)

  

如果我不想修改,我将如何定义这样的关系   Gallery表(添加FK)。我想到的一个选择是添加   我指向的Products表的gallery_id字段   Gallery-> id但我如何定义产品中的关系   模型文件?

如果你使用一对一的关系作为情境方法,你可以这样做,但它会导致任何继承你的代码的开发人员想知道为什么原始人这样做了。我认为现在跟你没关系,所以我称之为situation method

假设这是它的工作原理:adding a gallery_id field to my Products table that would point to Gallery->id

在产品型号

的功能relations()
'Gallery' => array(self::BELONGS_TO, 'Gallery', 'gallery_id')

在图库模型的功能relations()

'Product' => array(self::HAS_ONE, 'Product', 'gallery_id'),