after_save
будет запускать методы upcase
после того, как модель уже сохранена в базе данных.Другими словами, он просто увеличивает атрибуты объекта в памяти после того, как сохранение уже завершено.Это не то, что вам нужно.
Вместо этого вы хотите использовать before_save
, чтобы атрибуты были переданы в регистр перед записью объекта в базу данных:
before_save :upcase_tax_label
private
def upcase_tax_label
tax1_label.upcase!
tax2_label.upcase!
end
Суть в том, что у вас естьявно сохранить модель для внесения изменений в базу данных.До этого вы просто играете с объектом в памяти.