所以我正在尝试做什么:
我想要一个基于文字的字段,“优惠券代码”
以嵌套形式。
基本上f.text_field :coupon
但该值应该是与coupons
表中的项目的关系,而不是与id的关系。
优惠券表可能看起来像
|ID| CouponCode |
+--+------------+
|1 | a89sd9asda |
+--+------------+
我的主表看起来像
|ID| OrderTitle | Coupon |
+--+------------+------------+
|1 | sdfsdfsdfd | a89sd9asda |
+--+------------+------------+
在rails中是否有办法通过has_one链接这两个并使用非ID字段?
答案 0 :(得分:1)
回答你的问题:
class Order < ActiveRecord::Base
has_one :coupon_code, :foreign_key => 'CouponCode'
end
class CouponCode < ActiveRecord::Base
belongs_to :order, :foreign_key => 'CouponCode'
end
然而,我同意达米恩:这看起来有点像常见的数据库设计方法。