Я обычно пишу что-то вроде этого:
class Person < ActiveRecord::Base
attr_accessible :first_name, :last_name
def name
"#{ first_name } #{ last_name }"
end
def name=(str)
first, last = str.split(' ', 2)
write_attribute :first_name, first
write_attribute :last_name, last
end
end
, что позволяет вам делать Person.new(:name => "Adam Lassek")
вместо разделения в контроллере.
В Rails 3.1.0.rc4-5, это дает мне ошибку WARNING: Can't mass-assign protected attributes: name
.
Это раньше работало.Что изменилось?