如何获取强参数以引发未知属性的异常

How to get strong parameters to raise exception for unknown attribute

params.require(:xxx).permit(:a, :b, :c) 对我来说是半途而废,也就是说,如果 params[:xxx][:d] 在那里,它会被 permit 删除。不过我想有一个例外。

我没有找到它的文档,或者缺少它。在这种情况下,我应该设置什么选项(我更喜欢一个全局设置)来获得异常?

既然你没有任何引发异常的方法,你可以使用 permitted? 方法来检查它是否被允许,如果方法 returns false.

编辑:实际上你可以通过以下方式引发异常: ActionController::Parameters.action_on_unpermitted_parameters = :raise

更多信息请访问:http://api.rubyonrails.org/classes/ActionController/Parameters.html