【发布时间】:2010-12-17 04:30:26
【问题描述】:
刚刚从事一个项目,我有一个名为“Product”的类和一个名为“Image”的类。每个产品有两种类型的图片,一种“正面”图片和一种“背面”图片,所以我定义了两个字段,一个叫 image_front_id,一个叫 image_back_id。
在 BaseProduct::setUp() 方法中,我定义了正面图像的关系如下:
$this->hasOne( 'Image', array ('local' => 'image_front_id', 'foreign' => 'id' ) );
现在,显然,当我为“Image”类定义另一个“hasOne”时,但现在使用“image_back_id”的本地字段名,这不能正常工作。所以我的问题是:如何定义同一个类的多个“一对一”关系?我一直在寻找这个,但我似乎找不到它。
【问题讨论】:
-
我会考虑为不同类型的图像腾出更多空间,当您的设计发生变化并且您需要提供
image_profile_id时会发生什么,或者决定背面的图像永远不会获得任何视图,所以您可能会重构出来?很抱歉被OT,只是给你一个提示:)
标签: php doctrine database-relations