Вероятно, вы должны сделать это в вашей Job
модели:
[Update]
Добавлен тест для new_record?
в обратном вызове, поскольку процент может законно быть nil
; мы не хотим переопределять его, если он был ранее установлен как таковой.
class Job < ActiveRecord::Base
after_initialize :calculate_default_percent
# other stuff
private
def calculate_default_percent
if self.new_record?
conditions = { :conditions => "percentage NOT NULL" }
self.percentage = Job.last(conditions).nil? ? 23 : Job.last(conditions).percentage
end
end
end