在应用中,客户可以预先命令多个广告。
存储此信息的更好方法是什么:
#1 使用"预订"创建空广告状态
#2 使用数据库中的pre_order_ads列存储预订广告的数量
有人可以给我一些逻辑吗?
谢谢!
答案 0 :(得分:1)
我会选择这种配置:
class Ad < ActiveRecord::Base
belongs_to :order
class Order < ActiveRecord::Base
has_many :ads
validates :state, presence: true, inclusion: { in: Order::STATES }
STATES = ['preordered', 'ordered', 'confirmed', 'shipped', #...]
这意味着Order
包含有序/预订的逻辑。您可能希望能够预订订单的某些广告而不是整个订单。如果是这样,请在广告模型上使用州属性。