diff options
author | Carlos Antonio da Silva <carlosantoniodasilva@gmail.com> | 2015-01-03 20:20:05 -0200 |
---|---|---|
committer | Carlos Antonio da Silva <carlosantoniodasilva@gmail.com> | 2015-01-03 20:20:05 -0200 |
commit | 1468a11f9b927882c3df463f3705e170baca2079 (patch) | |
tree | 020e1f536957b89b6b28db5d75d93fa315ffc818 | |
parent | 4591b0fc041454f4ba4a83629b9bbca2a851969c (diff) | |
parent | 6bd812605de2e2360606be3821a046778b874254 (diff) | |
download | rails-1468a11f9b927882c3df463f3705e170baca2079.tar.gz rails-1468a11f9b927882c3df463f3705e170baca2079.tar.bz2 rails-1468a11f9b927882c3df463f3705e170baca2079.zip |
Merge pull request #13434 from tanraya/local_variables
Use local variables in _form.html.erb generated by scaffold.
Conflicts:
railties/CHANGELOG.md
5 files changed, 21 insertions, 6 deletions
diff --git a/railties/CHANGELOG.md b/railties/CHANGELOG.md index 5367a4dd0e..f67c87d74d 100644 --- a/railties/CHANGELOG.md +++ b/railties/CHANGELOG.md @@ -1,3 +1,7 @@ +* Use local variables in `_form.html.erb` partial generated by scaffold. + + *Andrew Kozlov* + * Add `config/initializers/callback_terminator.rb` Newly generated Rails apps have a new initializer called diff --git a/railties/lib/rails/generators/erb/scaffold/templates/_form.html.erb b/railties/lib/rails/generators/erb/scaffold/templates/_form.html.erb index bba9141fb8..d9713b0238 100644 --- a/railties/lib/rails/generators/erb/scaffold/templates/_form.html.erb +++ b/railties/lib/rails/generators/erb/scaffold/templates/_form.html.erb @@ -1,10 +1,10 @@ -<%%= form_for(@<%= singular_table_name %>) do |f| %> - <%% if @<%= singular_table_name %>.errors.any? %> +<%%= form_for(<%= singular_table_name %>) do |f| %> + <%% if <%= singular_table_name %>.errors.any? %> <div id="error_explanation"> - <h2><%%= pluralize(@<%= singular_table_name %>.errors.count, "error") %> prohibited this <%= singular_table_name %> from being saved:</h2> + <h2><%%= pluralize(<%= singular_table_name %>.errors.count, "error") %> prohibited this <%= singular_table_name %> from being saved:</h2> <ul> - <%% @<%= singular_table_name %>.errors.full_messages.each do |message| %> + <%% <%= singular_table_name %>.errors.full_messages.each do |message| %> <li><%%= message %></li> <%% end %> </ul> diff --git a/railties/lib/rails/generators/erb/scaffold/templates/edit.html.erb b/railties/lib/rails/generators/erb/scaffold/templates/edit.html.erb index 5620fcc850..81329473d9 100644 --- a/railties/lib/rails/generators/erb/scaffold/templates/edit.html.erb +++ b/railties/lib/rails/generators/erb/scaffold/templates/edit.html.erb @@ -1,6 +1,6 @@ <h1>Editing <%= singular_table_name.titleize %></h1> -<%%= render 'form' %> +<%%= render 'form', <%= singular_table_name %>: @<%= singular_table_name %> %> <%%= link_to 'Show', @<%= singular_table_name %> %> | <%%= link_to 'Back', <%= index_helper %>_path %> diff --git a/railties/lib/rails/generators/erb/scaffold/templates/new.html.erb b/railties/lib/rails/generators/erb/scaffold/templates/new.html.erb index db13a5d870..9b2b2f4875 100644 --- a/railties/lib/rails/generators/erb/scaffold/templates/new.html.erb +++ b/railties/lib/rails/generators/erb/scaffold/templates/new.html.erb @@ -1,5 +1,5 @@ <h1>New <%= singular_table_name.titleize %></h1> -<%%= render 'form' %> +<%%= render 'form', <%= singular_table_name %>: @<%= singular_table_name %> %> <%%= link_to 'Back', <%= index_helper %>_path %> diff --git a/railties/test/generators/scaffold_generator_test.rb b/railties/test/generators/scaffold_generator_test.rb index 20b801f341..ad365f45d0 100644 --- a/railties/test/generators/scaffold_generator_test.rb +++ b/railties/test/generators/scaffold_generator_test.rb @@ -68,6 +68,17 @@ class ScaffoldGeneratorTest < Rails::Generators::TestCase end assert_no_file "app/views/layouts/product_lines.html.erb" + # Views local variables + assert_file "app/views/product_lines/_form.html.erb" do |test| + assert_no_match(/@product_line/, test) + end + + %w(edit new).each do |view| + assert_file "app/views/product_lines/#{view}.html.erb" do |test| + assert_match(/product_line: @product_line/, test) + end + end + # Helpers assert_file "app/helpers/product_lines_helper.rb" |