Solved

customize rails URL

Posted on 2011-09-20
6
484 Views
Last Modified: 2012-05-12
so lets say this is my show page from the story resource:

http://localhost:3000/stories/aerovironment-wins-84-million-order-for-digital-raven-uavs

how do i change "stories" to something else?

i already have this for the index page:

map.news '/news', :controller => 'stories', :action => 'index'

0
Comment
Question by:depassion
  • 3
  • 2
6 Comments
 
LVL 10

Expert Comment

by:Andrew Doades
ID: 36567741
Something like this, this is a real route from one of my current rails apps.
It means I can navigate to http://server/download_video/387  and download video "387" for example.

map.doclink '/download_video/:id', :controller => 'customer/sub_categories', :action => 'doclink2'

Andrew
0
 

Author Comment

by:depassion
ID: 36567790
so:

map.articleshow '/news/:id', :controller => 'stories', :action => 'show'

it doesn't work for me
0
 
LVL 10

Expert Comment

by:Andrew Doades
ID: 36567808
Hmm.. what's the field name where "aerovironment-wins-84-million-order-for-digital-raven-uavs" comes from?
I'll then do some testing on a local app (unless someone steps in first :) )

Andrew
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 

Author Comment

by:depassion
ID: 36567827
thats from a plugin called friendly_id

gem "friendly_id", "3.1.7"
0
 

Author Comment

by:depassion
ID: 36567871
it just takes the heading of the story

t.string   "heading"

and in the story model:

has_friendly_id :heading, :use_slug => true
0
 
LVL 4

Accepted Solution

by:
kristinalim earned 500 total points
ID: 36585364
It looks like you already have a collection resource set up. It probably looks like this:
map.resources :stories

Open in new window


What version of rails are you using? It doesn't look like it's Rails 3.x. In 2.3.8, you can use the :as option to specify the name generated and recognized in the URL. See the Rails 2.3.8 API, search for "resources" (ActionController::Resources) for more information.
map.resources :stories, :as => 'news'

Open in new window

In a much earlier version, if I remember correctly, it's the :opaque_name option.
0

Featured Post

Maximize Your Threat Intelligence Reporting

Reporting is one of the most important and least talked about aspects of a world-class threat intelligence program. Here’s how to do it right.

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
Record Login Time 8 481
Active Record and IBM_DB 3 773
How do you upgrade Ruby? (Windows) 2 207
RVM setup 5 189
I recently rediscovered rails when I needed a holiday project and decided to build a management dashboard for the company where I work.  With it being a project done in my free time, I could focus my time on learning the basics rather than trying to…
Recently I spent hours debugging an issue in a Rails project where ActiveRecord was causing MySQL errors trying to create a User object of a class at the top level of a Single Table Inheritance model structure.  It turns out `.create` behaves differ…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…

757 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now