Rails逻辑!预订广告,如何存储信息?

时间:2014-09-25 15:03:44

标签: ruby-on-rails database logic

在应用中,客户可以预先命令多个广告。

存储此信息的更好方法是什么:

#1 使用"预订"创建空广告状态

#2 使用数据库中的pre_order_ads列存储预订广告的数量

有人可以给我一些逻辑吗?

谢谢!

1 个答案:

答案 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包含有序/预订的逻辑。您可能希望能够预订订单的某些广告而不是整个订单。如果是这样,请在广告模型上使用州属性。