[英]How implement as: parameter of attr_accessible of rails 3 to rails 4
我剛剛從Rails 3升級到Rails 4.2。 到目前為止,除了attr_accessible
存在問題之外,其他所有功能都可以正常工作。 以前在rails 3中,我通過:as
參數定義了一些attr_accessible
,如下所示
attr_accessible :customer_id,:country_id, :city_id, :user_id, :as => [:default, :admin]
attr_accessible :archive, :as => :admin
現在,在Rails 4中,我可以在控制器中執行類似的操作,並根據用戶是否為admin更新/ create。 但是我想知道是否有更好的方法或標准方法來做到這一點? 還是這是正確的方法?
private
def products_params
params.require(:product).permit(:customer_id,:country_id, :city_id, :user_id)
end
def products_params_admin
params.require(:product).permit(:customer_id,:country_id, :city_id, :user_id, :archive)
end
將此添加到您的Gemfile
以再次具有attr_accessible
:
gem 'protected_attributes'
IMO對於穩定項目是一種合理的方式,但是強大的參數更加靈活,例如,可以根據對象狀態傳遞屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.