Ruby on rails一对多关系

时间:2013-10-21 11:23:05

标签: ruby-on-rails-3

我有一个模型User,它与Image模型有一对多的关系。

如何限制用户只能存储3张图像?

1 个答案:

答案 0 :(得分:1)

验证怎么样?

class Image
  belongs_to :user

  validate :max_3_per_user
  # (...)
  private

  def max_3_per_user
    if user_id && Image.where(user_id: user_id).count >= 3
      errors.add(:images, 'There can only be 3 per user')
    end
  end
end