2010-02-12 2 views
0

J'ai plusieurs pages statiques et quelques pages dynamiques. Les pages statiques sont sous le contrôleur "Info". Les pages dynamiques sont sous "produits". Je veux accéder aux "produits" de leur: permalink Je peux seulement obtenir map.info ou map.products pour travailler mais pas les deux.Ruby Name Routes avec permaliens et pages statiques

ActionController::Routing::Routes.draw do |map| 
    map.resources :products 
    map.resources :info 
    map.root :controller => "products" 
    map.info ':action', :controller => "info" 
    map.products ':permalink', :controller => 'products', :action => 'show' 
    map.connect ':controller/:action/:id' 
    map.connect ':controller/:action/:id.:format' 
end 

Répondre

1

Disons que vous allez à http://yoursite.com/something

Comment les itinéraires déterminer si elle est une page produit ou info? Ça ne peut pas, et c'est pourquoi ça ne marchera pas. Vous devez en mettre un sous un espace de noms quelconque.

map.info ':action', :controller => "info" 
map.products '/products/:permalink', :controller => 'products', :action => 'show' 
+0

OK, à proximité. Est-il possible d'avoir map.info '/ info /: action' et ensuite map.products ': permalink'? quand j'essaye ceci je reçois "Aucune action n'a répondu au show Actions:" – pcasa

+0

Quelle URL utilisez-vous? – jshen

Questions connexes