diff options
-rw-r--r-- | actionpack/CHANGELOG | 2 | ||||
-rw-r--r-- | actionpack/lib/action_controller/templates/scaffolds/edit.rhtml | 2 | ||||
-rw-r--r-- | actionpack/lib/action_view/helpers/active_record_helper.rb | 6 |
3 files changed, 6 insertions, 4 deletions
diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG index 793c93adb8..9343c00c12 100644 --- a/actionpack/CHANGELOG +++ b/actionpack/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Added that ActiveRecordHelper#form now calls url_for on the :action option. + * Added all the HTTP methods as alternatives to the generic "process" for functional testing #276 [Tobias Luetke]. Examples: # Calls Controller#miletone with a GET request diff --git a/actionpack/lib/action_controller/templates/scaffolds/edit.rhtml b/actionpack/lib/action_controller/templates/scaffolds/edit.rhtml index 1c7f4d9770..d877ea1fd6 100644 --- a/actionpack/lib/action_controller/templates/scaffolds/edit.rhtml +++ b/actionpack/lib/action_controller/templates/scaffolds/edit.rhtml @@ -1,6 +1,6 @@ <h1>Editing <%= @scaffold_singular_name %></h1> -<%= form(@scaffold_singular_name, :action => "../update" + @scaffold_suffix) %> +<%= form(@scaffold_singular_name, :action => "update" + @scaffold_suffix) %> <%= link_to "Show", :action => "show#{@scaffold_suffix}", :id => instance_variable_get("@#{@scaffold_singular_name}").id %> | <%= link_to "Back", :action => "list#{@scaffold_suffix}" %> diff --git a/actionpack/lib/action_view/helpers/active_record_helper.rb b/actionpack/lib/action_view/helpers/active_record_helper.rb index de18696992..7066121c28 100644 --- a/actionpack/lib/action_view/helpers/active_record_helper.rb +++ b/actionpack/lib/action_view/helpers/active_record_helper.rb @@ -24,7 +24,7 @@ module ActionView # Returns an entire form with input tags and everything for a specified Active Record object. Example # (post is a new record that has a title using VARCHAR and a body using TEXT): # form("post") => - # <form action='create' method='POST'> + # <form action='/post/create' method='POST'> # <p> # <label for="post_title">Title</label><br /> # <input id="post_title" name="post[title]" size="30" type="text" value="Hello World" /> @@ -44,14 +44,14 @@ module ActionView # form("entry", :action => "sign", :input_block => # Proc.new { |record, column| "#{column.human_name}: #{input(record, column.name)}<br />" }) => # - # <form action='sign' method='POST'> + # <form action='/post/sign' method='POST'> # Message: # <input id="post_title" name="post[title]" size="30" type="text" value="Hello World" /><br /> # <input type='submit' value='Sign' /> # </form> def form(record_name, options = {}) record = instance_eval("@#{record_name}") - action = options[:action] || (record.new_record? ? "create" : "update") + action = url_for(:action => options[:action] || (record.new_record? ? "create" : "update")) id_field = record.new_record? ? "" : InstanceTag.new(record_name, "id", self).to_input_field_tag("hidden") "<form action='#{action}' method='POST'>" + |