dynamic paths

does anyone know how i can make dynamic paths?

say i had a partial for maybe an index list, but i want the link to the show page to be dynamic so im able to use the partial for may objects.

<%= link_to "show", "#{object}" + _path(object) %>

something along those lines.

excellent. thank you.

i further step.

I have a polymorphic association where im trying to achieve something similar.

im feeding an xml file to a swf.

the xml iterates over the poly model, but it belongs_to many different objects.

but the xml file is called from the poly controller. so the above wont work correctly, right?

if this doesnt make sense i can post some code

Are you looking for polymorphic_path ?

Fred

If your routes are set up in the default RESTful style, then you should just be able to call:

<%= link_to 'show', object %>

...and the routing system will get what you mean. If things are more complicated, you may need of the other solutions here. Or, you could call a named route like this:

<%= link_to 'show', send("#{some expression that gives you the name} _path", object) %>

but the previous example seems much cleaner.

--Matt Jones

Let me see if i can be more clear, and i will try some of the suggested solutions

Im trying to make the route paths dynamic.

Lets say I have 2 models document, and article

I would have paths like document_path(document), documents_path, new_document_path etc... and similar for article article_path(article), articles_path, new_article_path etc....

In the past few apps I have been developing I have come across situations where I have had blocks of code (that could be a helper or partial) that are pretty much the same for various models. or im this particular case, an xml file that needs to be used by various models.

So in these cases I want to be able to create 1 partial or helper or even an xml.builder that could allow the passing of any model object.

Database attributes work as they should document.title or article.title could be passed in like so <%= my_partial(object) %> with

Def my_partial(object)     object.title End

The problem comes with the restful paths

document_path(document) or article_path(article)

Where I want to generate

#{object}_path(object) or #{object)s_path or new_#{object}_path etc.....

This way i can create 1 block of code to be used by many objects

Does that make more sense?

After diving into a few mentioned scenarios (thanks Frederick) the polymorphic_path and polymorphic_url is what i was looking for.

thanks guys

B