【问题标题】:What should a controller class in Ruby on Rails contain?Ruby on Rails 中的控制器类应该包含什么?
【发布时间】:2012-02-06 07:14:19
【问题描述】:

我正在制作一个测验网络应用程序,因此需要管理问题(添加、更改等),用户将浏览集合并可能添加、报告等问题。

现在,如果我制作了一个 questioncontroller,它是否会包含处理问题(公共和管理员)的所有操作(方法),或者这是您制作两个控制器的情况?

有人能解释一下我什么时候应该制作新的控制器,而不是仅仅在现有的控制器上添加动作吗?

如果我制作了两个控制器,我最终会复制大量代码。我应该创建一个基类吗?

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    您可以使用单个控制器构建所有内容。我认为使用多个控制器与项目结构有关。

    在您的情况下,我将在同一个控制器(例如,名为“questions_controller.rb”)中实现所有类型的问题,并在内部实现一个过滤器,以在请求管理员问题时验证管理员用户。

    您的应用很可能需要其他控制器,例如静态页面(联系人、关于)、会话(登录、注销)、成员(注册、个人资料)等。

    关于基类,当然!如果您要重复方法,那将是一个不错的解决方案。 Rails 只是 Ruby。

    【讨论】:

      【解决方案2】:

      如果您将管理员视为普通用户,则无需创建两个控制器。 如果您需要特殊用户以管理员身份管理问题,则需要创建两个控制器!

      这是我的选择。希望能帮到你!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-01-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多