资源丰富的路线助手_path和_url不起作用

时间:2011-11-03 20:54:16

标签: ruby-on-rails ruby-on-rails-3 resources routes ruby-on-rails-3.1

我正在尝试将用户重定向到show_city_urlshow_city_path,但我得到一个例外,它们都是未定义的。在城市控制器中,我有三个动作显示,喜欢和不喜欢。 unlike_city_pathlike_city_path有效但show_city_path没有。当我把这个放在all_cities中时,redirect_to :controller=>"city",:action=>"show"有效。我做错了什么?谢谢。

    class HomeController < ApplicationController  

    def all-cities
       redirect_to show_city_url
    end  

   end

在路线

     resources :city do
     member do
     post :like
     post :dislike
     get  :show
    end
    end

1 个答案:

答案 0 :(得分:1)

根据你的意见:

resources :cities, :controller => 'city' do
  collection do
    get :show, :as => :show
  end

  member do
    post :like
    post :dislike
  end
end

现在您可以致电show_cities_url,然后您将进入CityController的show动作。

PS:遵循Rails的惯例会让您的生活更轻松;)

RoR指南:Rails Routing from the Outside In