[英]Strong params on a hash or array
在rails中,我在模型中這樣做 :
def update_user_ex(*attrs)
user.assign_attributes(*attrs)
# .............
這里的attrs
是帶有哈希的數組 ,為簡單起見,我們說它是單個哈希。
如何在Rails 4中做到這一點? “ permit”不適用於哈希或數組。
根據https://github.com/rails/strong_parameters上的文檔,可以在控制器外部使用強參數
例:
def update_user_ex(*attrs)
params = ActionController::Parameters.new(attrs)
user.assign_attributes(params.permit(:name, :email, :something_else))
許可證可以在導軌4上的數組上工作。但是數組必須是最后一個參數。
params.require(:test).permit(:name,:rollno, question_ids:[])
下面的示例給出錯誤,因為數組不是最后一個參數。
params.require(:test).permit(question_ids:[], :rollno)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.