控制器进入另一个控制器?

时间:2016-01-17 17:43:50

标签: ruby-on-rails hyperlink controller

所以我有这个Ruby on Rails课程,我必须为它创建一个非常简单的博客应用程序。但它让我很难过!

我有这个名为'文章'的模型,我可以通过导航到/文章看到包含所有文章的列表。我按照Rails文档制作了一个控制器。 我的老师也希望我建立一个“管理员”区域,所以我需要访问/ admin / articles访问同一个列表。

我该怎么做? 我知道这是一个非常愚蠢的问题,但我无法在任何地方找到答案。

感谢您的时间!

1 个答案:

答案 0 :(得分:1)

您需要为 / articles / admin / articles

创建路线

<强>的routes.rb

  

get&#34; / articles&#34; =&GT; &#34;#物品索引&#34;

     

命名空间:管理员       得到&#34; / articles&#34; =&GT; &#34;#物品索引&#34;
    端

创建2个控制器。

1)

class ArticlesController < ApplicationController

  def index
    @articles = current_user.articles
  end

end

对于admin,在文件夹admins下创建另一个控制器。

2)

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

这里继承Basecontroller以更好地编码和处理具有不同命名空间的控制器。或者你也可以继承应用程序控制器。

还有一件事,请创建像文章一样的单数名称的模型,并根据rails标准命名约定创建控件之类的文件。