2011-07-26 36 views
0

的運行通常我寫的是這樣的:Helper方法相抵觸質量分配安全

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錯誤。

這用於工作。什麼改變了?

+0

我想你只需要添加名字到attr_accessible – Matt

+0

@馬特試過了;沒有工作。 –

+0

@Matt刮那個;看起來確實起作用,但它並沒有被用於一個不相關的理由。 –

回答

1

添加名字到attr_accessible