我希望为Rails中的对象创建一个全局标识符。该全局标识符是一个数字(或字母数字混合),在许多对象之间共享。当您保存对象时,您将插入基于对象和对象ID的全局标识值。
例如:
所以问题是,我能否使用对象类型和对象ID的组合外键来进行has_one操作。还是说我需要像对象值、缩写名称和原始对象的ID一样使用一个外键。
例如:
location id=3
id=15
arc_type='location'
arc_id=3
arc_value=loc-3
所以问题是,我能否使用对象类型和对象ID的组合外键来进行has_one操作。还是说我需要像对象值、缩写名称和原始对象的ID一样使用一个外键。
或者使用不同的方案,如将md5哈希作为外键。
这是否适合进行多态关联?似乎这更适合于具有has_many关系的情况(例如图片或评论),而不是has_one。有人曾经使用多态关联进行过has_one操作吗?
谢谢
编辑-看起来object_id名称不太合适,所以我用arc_代替了它,这是项目的首字母缩写
has_one
:http://guides.rubyonrails.org/association_basics.html#has_one-as - Benoit Garretuuid
列(可以通过migration添加)。 - Ahmish