Ruby on rails RubyonRails-保存前获取多态\u id
我有两个模型: 多态性Ruby on rails RubyonRails-保存前获取多态\u id,ruby-on-rails,ruby,activerecord,polymorphism,Ruby On Rails,Ruby,Activerecord,Polymorphism,我有两个模型: 多态性 class Custo < ActiveRecord::Base belongs_to :custavel, polymorphic: true accepts_nested_attributes_for :custavel, allow_destroy: true validates_presence_of :numero, :serie validates_uniqueness_of :numero, scope: :serie end 但它在
class Custo < ActiveRecord::Base
belongs_to :custavel, polymorphic: true
accepts_nested_attributes_for :custavel, allow_destroy: true
validates_presence_of :numero, :serie
validates_uniqueness_of :numero, scope: :serie
end
但它在验证时失败,因为custavel\u id还不存在。如何操作?修改
回调方法
before_save :set_numero
def set_numero
write_attribute(:numero, custavel_id) if custavel_type == 'Pagamento'
end
before_save :set_numero
def set_numero
return unless custavel_type == 'Pagamento'
write_attribute(:numero, custavel_id)
end
before_save :set_numero
def set_numero
write_attribute(:numero, custavel_id) if custavel_type == 'Pagamento'
end