ruby-on-rails-4 - rails api教程



什么是`params.require(:person).permit(:name,:age)`在Rails 4中做什么? (1)

控制器中的params看起来像一个Hash,但实际上它是ActionController::Parameters一个实例,它提供了几种方法,例如requirepermit

require方法确保存在特定参数,如果未提供,则require方法将引发错误。 它为传递给require的密钥返回一个ActionController::Parameters实例。

permit方法返回参数对象的副本,仅返回允许的键和值。 当创建一个新的ActiveRecord模型时,只有允许的属性被传递到模型中。

它看起来很像以前包含在ActiveRecord模型中的白名单,但它在控制器中更有意义。

Rails 4文档中所有强参数的示例都使用params.require(:person).permit(:name, :age)

是否有人可以解构并解释发生了什么requirepermit在这里?

谢谢!





ruby-on-rails-4