提交 02eef945 编写于 作者: K Kasper Timm Hansen

Merge pull request #22574 from gsamokovarov/scaffold-500

Prevent a 500 in the default controller scaffold
...@@ -52,7 +52,7 @@ def set_<%= singular_table_name %> ...@@ -52,7 +52,7 @@ def set_<%= singular_table_name %>
# Only allow a trusted parameter "white list" through. # Only allow a trusted parameter "white list" through.
def <%= "#{singular_table_name}_params" %> def <%= "#{singular_table_name}_params" %>
<%- if attributes_names.empty? -%> <%- if attributes_names.empty? -%>
params[:<%= singular_table_name %>] params.fetch(:<%= singular_table_name %>, {})
<%- else -%> <%- else -%>
params.require(:<%= singular_table_name %>).permit(<%= attributes_names.map { |name| ":#{name}" }.join(', ') %>) params.require(:<%= singular_table_name %>).permit(<%= attributes_names.map { |name| ":#{name}" }.join(', ') %>)
<%- end -%> <%- end -%>
......
...@@ -59,7 +59,7 @@ def set_<%= singular_table_name %> ...@@ -59,7 +59,7 @@ def set_<%= singular_table_name %>
# Only allow a trusted parameter "white list" through. # Only allow a trusted parameter "white list" through.
def <%= "#{singular_table_name}_params" %> def <%= "#{singular_table_name}_params" %>
<%- if attributes_names.empty? -%> <%- if attributes_names.empty? -%>
params[:<%= singular_table_name %>] params.fetch(:<%= singular_table_name %>, {})
<%- else -%> <%- else -%>
params.require(:<%= singular_table_name %>).permit(<%= attributes_names.map { |name| ":#{name}" }.join(', ') %>) params.require(:<%= singular_table_name %>).permit(<%= attributes_names.map { |name| ":#{name}" }.join(', ') %>)
<%- end -%> <%- end -%>
......
...@@ -56,7 +56,7 @@ def test_dont_use_require_or_permit_if_there_are_no_attributes ...@@ -56,7 +56,7 @@ def test_dont_use_require_or_permit_if_there_are_no_attributes
assert_file "app/controllers/users_controller.rb" do |content| assert_file "app/controllers/users_controller.rb" do |content|
assert_match(/def user_params/, content) assert_match(/def user_params/, content)
assert_match(/params\[:user\]/, content) assert_match(/params\.fetch\(:user, \{\}\)/, content)
end end
end end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册