【问题标题】:What is the difference between `params.require(:person).permit(:name, :age)` and ' params.require(:person).permit!'?`params.require(:person).permit(:name, :age)` 和 'params.require(:person).permit!' 有什么区别?
【发布时间】:2016-05-12 16:49:14
【问题描述】:

我想知道使用有什么区别

  def person_params
    params.require(:person).permit!
  end

  def person_params
    params.require(:person).permit(:name, :age)
  end

【问题讨论】:

标签: ruby-on-rails ruby-on-rails-4


【解决方案1】:

permit!

将允许的属性设置为 true

这允许您发送给它的任何内容。

在其他有

permit(*filters)

返回一个新的 ActionController::Parameters 实例,该实例仅包含给定的过滤器,并将对象的允许属性设置为 true。这对于限制应该允许大规模更新的属性很有用。

因此,如果您允许(:name, :age) 并传入 :gender,则不允许。

【讨论】:

    猜你喜欢
    • 2013-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-01
    • 2016-04-20
    • 2012-09-21
    • 1970-01-01
    相关资源
    最近更新 更多