On Fri, 2010-02-26 at 17:44 -0800, east wrote:
> I'm stumped trying to generate an URL for a working route.  I've this
> route definition:
> 
>   map.connect 'foo/:foo_id/propose_something/:zap_id',
>               :controller => "foo",
>               :action => "propose_something"
> 
> When I browse to this url: http://localhost:3000/foo/2/propose_something/5,
> my propose_something method gets invoked with the correct params
> hash.  So one would think that all is good, but I'm stuck trying to
> generate the corresponding URL to pass to link_to.
> 
> I would think that this would do it:
>  url_for(:controller => "foo", :action => 'propose_something', :foo_id
> => 1, :zap_id => 13)
> 
> But this generates this URL:
> http://localhost:3000/foo/propose_something?foo_id=1&zap_id=13
> 
> To work around this, I've constructed the string manually, but that
> feels nasty in all sorts of ways...
> 
> Can someone point out what the heck I'm doing wrong?
----
url_for(:controller => "foo", :action => ('/' + :foo_id +
'/propose_something'), :zap_id => 13)

You might not need the parens but it tends to help me spot what the intent was 
right away.

That said, I probably would rethink my 'routes' and use routes and methods that 
tended towards standardization and have my methods parse the params.

Craig


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-t...@googlegroups.com.
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to