2016-01-17 105 views
0

所以我有這個Ruby on Rails課程,我必須爲它創建一個非常簡單的博客應用程序。但是這讓我很難過!控制器轉入另一個控制器在導軌?

我有這個模型叫'文章',我可以通過導航到/文章看到所有文章的列表。我按照Rails文檔爲它製作了一個控制器。 我的老師也希望我做一個'管理員'區域,所以我需要通過訪問/ admin/articles訪問相同的列表。

我該怎麼做? 我知道這是一個非常愚蠢的問題,但我無法在任何地方找到答案。

謝謝您的時間!

+0

您可以爲資源「文章」添加名稱空間。它在rails guide教程中提到(http://guides.rubyonrails.org/routing.html#controller-namespaces-and-routing) – Sasidaran

回答

1

你需要爲/文章/管理/文章創建路線

的routes.rb

GET 「/篇」=> 「的文章#指數」

namespace:admins do get「/ articles」=>「articles#index」
end

並創建2個控制器。

1)

class ArticlesController < ApplicationController 

    def index 
    @articles = current_user.articles 
    end 

end 

和用於管理,創建文件夾下的管理員的另一個控制器。

2)

class Admins::ArticlesController < Admins::BaseController 
    def index 
    @articles = Articles.all 
    end 
end 

這裏繼承Basecontroller與不同的命名空間更好的編碼和處理控制器。或者你也可以繼承應用程序控制器。

還有一件事情,請按照導軌標準命名約定,創建像文章一樣的單數名稱的模型,以及像控制器一樣的複數形式。