【问题标题】:controller into another controller in rails?控制器到rails中的另一个控制器?
【发布时间】:2016-04-22 20:12:46
【问题描述】:

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

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

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

感谢您的宝贵时间!

【问题讨论】:

标签: ruby-on-rails hyperlink controller


【解决方案1】:

您需要为 /articles/admin/articles

创建路由

routes.rb

get "/articles" => "articles#index"

命名空间:管理员做 获取 "/articles" => "articles#index"
结束

并创建 2 个控制器。

1)

class ArticlesController < ApplicationController

  def index
    @articles = current_user.articles
  end

end

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

2)

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

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

还有一件事,请按照 Rails 标准命名约定创建具有单数名称的模型(如文章)和复数的控制器(如文章)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-18
    • 1970-01-01
    • 1970-01-01
    • 2011-08-11
    • 1970-01-01
    • 2013-05-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多