Activerecord Yii在PK以外的列上联接表

Activerecord Yii在PK以外的列上联接表,activerecord,yii,Activerecord,Yii,我正在使用扩展,它有一个与GalleryPhotos模型(Gallery_photo.Gallery_id FK to Gallery.id)的一对多关系连接的Gallery模型 我有一个产品模型,我想加入一对一关系的画廊模型 如果我不想修改Gallery表(添加FK),我将如何定义这种关系。 我考虑的一个选项是在我的产品表中添加一个gallery\u id字段,该字段将指向gallery->id,但我如何定义产品模型文件中的关系 如果我不想修改,我将如何定义这种关系 库表(用于添加FK)。我考

我正在使用扩展,它有一个与GalleryPhotos模型(Gallery_photo.Gallery_id FK to Gallery.id)的一对多关系连接的Gallery模型

我有一个产品模型,我想加入一对一关系的画廊模型

如果我不想修改Gallery表(添加FK),我将如何定义这种关系。 我考虑的一个选项是在我的产品表中添加一个gallery\u id字段,该字段将指向gallery->id,但我如何定义产品模型文件中的关系

如果我不想修改,我将如何定义这种关系 库表(用于添加FK)。我考虑的一个选择是添加 指向“我的产品”表的gallery_id字段 Gallery->id但如何定义产品中的关系 模型文件

如果您使用一对一关系作为情境方法,您可以这样做,但这将导致任何继承您的代码的开发人员都想知道为什么原始人会这样做。我认为现在这对你来说无关紧要,因此我称之为“情境方法”

假设它是这样工作的:
在我的产品表中添加一个gallery\u id字段,该字段将指向gallery->id

在产品模型的函数
relations()

'Gallery' => array(self::BELONGS_TO, 'Gallery', 'gallery_id')
在库模型的函数
relations()

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