0

我想知道如何在 Rails 4.2 中创建单例控制器。

例如,在我的情况下rails g scaffold Dashboard会生成dashboards_controller女巫没有任何意义,因为我只需要一个仪表板,所以dashboard_controller我需要的东西也是如此。

我看到有一个-c指定控制器名称的选项,但是我敢打赌,有类似的东西,--singleton但现在已经消失了。

所以,问题是,我应该使用-c覆盖控制器名称还是“新 Rails 方式”是创建多个控制器名称,dashboards_controller然后使用路由器将其指向仪表板 URL?

4

2 回答 2

2

我不知道如何使用生成器来做到这一点,但是使用复数名称生成然后手动将其更改为单数很容易。

您的路线将类似于:

resource :dashboard, controller: 'dashboard', :only => ['show']

您的控制器类应重命名为DashboardController,文件名本身应重命名为dashboard_controller.rb. 保存视图文件的视图文件夹也应该是单数 -app/views/dashboard

“Rails 方式”默认情况下使用复数控制器名称,但在有意义的情况下使用单数控制器名称是可以的——在这种情况下他们当然会这样做。

于 2015-05-18T22:42:40.380 回答
0

rails g controller dashboard似乎你在找什么。

$ rails g controller dashboard
      create  app/controllers/dashboard_controller.rb
      invoke  erb
      create    app/views/dashboard
      invoke  test_unit
      create    test/controllers/dashboard_controller_test.rb
      invoke  helper
      create    app/helpers/dashboard_helper.rb
      invoke    test_unit
      invoke  assets
      invoke    coffee
      create      app/assets/javascripts/dashboard.coffee
      invoke    scss
      create      app/assets/stylesheets/dashboard.scss
于 2015-05-18T22:49:06.387 回答