在允许的参数上添加密钥

时间:2016-07-29 15:37:13

标签: ruby-on-rails ruby

我有这个:

  def some_params
    params.require(:person).permit(:name, :pass)

这些参数属于“params”中的关键“人”。如何将“params”顶级键添加到允许的参数列表中?总共它应该导致3个允许的参数密钥。

1 个答案:

答案 0 :(得分:2)

只需添加对方法的其他调用,如:

params = ActionController::Parameters.new({
  key1: 1,
  person: {
    name: 'Francesco',
    pass: 'pass'
  }
})
params.permit(:key1, {:person => [:name,  :pass]})

查看以下文档:https://github.com/rails/strong_parameters#require-multiple-parameters

  

需要多个参数

     

如果您想确保params中存在多个键   hash,你可以调用两次方法:

params.require(:token)
params.require(:post).permit(:title)