我有一个优惠模型。我想将其与奖励相关联,因为奖励可以是以下三种类型之一:现金返还,折扣或免费产品。选择奖励后,必须出现不同的选项,例如,在选择“现金返还”时,用户应能够指定其绝对值或百分比值,或者在选择“免费产品”时,用户应选择一个或多个产品。如何在Rails中做到这一点?
我考虑将其建立为一对多关系(请参见下面的代码) 因为一个奖励可以添加到许多优惠中,但是一个优惠将只有一种奖励。 但是我不确定这是否正确。
class Offer < AR
belongs_to :reward
end
class Reward < AR
has_many :offers
end
Rewards Table
id
name
type: [:cashback, :discount, :freebie]