2010-11-16 79 views
0

我有資源照片Rails 3中,幫助建立一個配置的控制器

目前我有這方面的工作:/照片

這說明照片#指數控制器,它就是我想要的.. 。

但現在我想也有/項目/ 2 /照片

原本應該顯示該項目的照片。問題是指向def索引,並且不知何故,我需要一個單獨的視圖來獲取這個路徑。

想法?由於

路線:

resources :projects do 
    resources :photos,do 
    collection do 
    get 'newjs' 
    end 
end 

回答

1

PhotosController#index動作,你可以檢查,看看是否params[:project_id]被定義 - 如果是,那麼你正在使用的子資源。如果不是,則使用頂級資源。

+0

謝謝本,但 - 這似乎很雜亂,不是嗎?在def#索引中有一個很大的if語句來表示完全不同的視圖? – AnApprentice 2010-11-16 19:05:22

+1

兩種不同的意見?或者兩套不同的控制器邏輯?如果控制器的邏輯真的不一樣,那麼代碼的結構可能會有些不合適 - 要麼你應該將一些代碼重構爲模型,要麼不應該讓一個資源同時作爲一個頂級資源和子資源。如果你確實想這樣處理一個資源,我相信檢查params [:project_id]是這種做法的慣用和正確的方法。也許如果你詳細闡述一些細節,我可以給出更好的答案。 – 2010-11-16 19:07:39

+0

哦,另外,我需要不同的視圖頁面,像project_photos_index,因爲佈局是非常不同的。思考? – AnApprentice 2010-11-16 19:08:26