簡體   English   中英

哈希或數組上的強參數

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM