Ruby on Rails
Wednesday, March 5, 2014
On Wed, Mar 5, 2014 at 9:32 PM, Walter Lee Davis <waltd@wdstudio.com> wrote:
Thanks, I tried that first, and couldn't get the forms to work. What did work was this (although it's quite a hack, routes-wise):
On Mar 5, 2014, at 6:40 AM, Frederick Cheung wrote:
>
>
> On Wednesday, March 5, 2014 7:02:34 AM UTC, Walter Lee Davis wrote:
> I need to use the model name 'Action' (which will not work in Rails 4.0.3) for business reasons (it's a product name). If I name the actual model something else, is there any way to (maybe with mod_rewrite) make the URL appear the way I need it to while keeping everything working in Rails?
>
> I've tried using the controller flag in routes.rb to try to fix this, and it seems to work, but causes a lot of problems elsewhere -- basically anything where I use the automatic URLs, like
>
> link_to 'Link text', @instance_var
>
>
> resources :foos, :as => :action ?
>
resources :fw_actions :as => :action
resources :fw_actions
The second line was required in order to support POST and PUT and DELETE, so I may go through these and put :only => [:post, :put, :delete] on the latter, and :without on the former.
I couldn't find any way to have form_for work in the absence of that duplicate set of routes.
You can remove the second line. In order for form_for to work, you need to manually set
the url instead of just form_for @instance_var. I've tested this out using the following routes
resources :pages, as: :foo
which gave the following routes
foo_index GET /pages(.:format) pages#index
POST /pages(.:format) pages#create
new_foo GET /pages/new(.:format) pages#new
edit_foo GET /pages/:id/edit(.:format) pages#edit
foo GET /pages/:id(.:format) pages#show
PATCH /pages/:id(.:format) pages#update
PUT /pages/:id(.:format) pages#update
DELETE /pages/:id(.:format) pages#destroy
Try the following for your forms
# new action
form_for @instance_var, url: foo_index_path, html: { method: :post }
# edit
form_for @instance_var, url: foo_path(@instance_var), html: { method: :put }
Walter
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/C70782AC-EFC0-4F09-9927-C5A4AB45E57A%40wdstudio.com.
> Fred
>
>
> --
> You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
> To post to this group, send email to rubyonrails-talk@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/af8c8dd9-dde6-4d15-aca2-1de45a2666a7%40googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
-------------------------------------------------------------
visit my blog at http://jimlabs.heroku.com
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/CAJ8y7Ve%3DnuNmEvBoC7SemU0WB%3DJk1fjnm-hz5Z1k10HONuN6oA%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment