2016-03-07 40 views
0

在Rails 3中,我們可以使用update_attributes如下軌道4:用不同的角色update_attributes方法

@customer.update_attributes(params[:customer], :as => :default) 
or 
@customer.update_attributes(params[:customer], :as => :admin) 

,我們的屬性訪問將被定義爲

attr_accessible :fname, :lname, :as => [:default, :admin] 
attr_accessible :status, :as => [:admin] 

但在軌道4,5,update_attributes方法不接受第二個參數。那麼我怎樣才能將上面的代碼轉換爲rails 4?

我想是這樣的

@customer.update_attributes(customer_params) 

private 
    def customer_params 
    params.require(:customer).permit(:fname, :lname, :status) 
    end 

但我不知道如何通過在軌道4,5的作用,同時更新的屬性。我不能做這樣的事情。

@customer.update_attributes(customer_params, :as => :admin) 

這是不允許的軌道4.所以我怎麼能在軌道4做類似的事情?

回答