2012-10-11 255 views
0

我感到困惑中軌佈線資源。我在名爲UsersController的控制器上有自定義操作,比如「login」。添加路由不失默認路由

在我的routes.rb如果我這樣做:

resource :users do 
    collection do 
    get 'login' 
    post 'login' 
    get 'logout' 
    end 
end 

我可以鏈接到UsersController的作用登錄沒有問題,但隨後將本地主機:3000 /用戶給我的錯誤:

Couldn't find User without an ID

但如果我這樣做

resources :users

localhost:3000 /用戶給了我預期的列表。

我試圖把兩者,但只存在於文件預計將在工作的第一個版本。

我怎樣才能將路由添加到默認的?

+0

你重新啓動服務器,你改變了你的routes.rb後? –

+0

是的,我做了,它沒有改變任何東西! – djfm

+1

我不知道它是否有錯字,但應該是資源不夠的第一個代碼塊 –

回答

0

您的路線錯字。

嘗試resourcesresource。 (resource不創建#INDEX動作)

看看到the manual

+0

哦,非常感謝。我混淆了兩種形式,認爲資源是爲了當你指定了幾個參數時... – djfm