【发布时间】:2015-01-22 15:55:29
【问题描述】:
我有一个多态 lookups 表和一个子 ContractType 模型。我在设置category 的ContractType 模型中有一个before_save 回调,但它似乎不起作用。
class Lookup < ActiveRecord::Base
validates :value, presence: true
validates :category, presence: true
end
class ContractType < Lookup
before_save { self.category = "contract_type" }
end
然后我打开rails c:
> c = ContractType.create(value: "test")
> c.errors.messages
=> { :category => ["can't be blank"] }
我没有收到任何错误,只是验证失败。据我所知,语法看起来是正确的,只是before_save 回调似乎不起作用......
我在这里遗漏了什么明显的东西吗?
【问题讨论】:
标签: ruby-on-rails-4 activerecord callback polymorphism