Rails路由上的命名空间和资源

时间:2012-04-23 14:22:02

标签: ruby-on-rails resources namespaces routes

我正在开发一个带有后台( admin )的应用,该应用仅限于某些用户,以便修改内容。另一方面,我有一个网络服务( api ),客户可以访问。

所以我在命名空间中分离了两个部分,并且我意识到当我使用脚手架作为例如问题的资源时,生成的控制器假定资源是 admin :: questions ,但是那不是我想要的。

我希望有:

/admin/questions to handle my questions (controller admin/questions_controller.rb)

/api/questions to serve my questions  (controller api/questions_controller.rb)

但在这两种情况下,它都是相同的模型。

我应该继续在路由中使用命名空间还是使用模块? 它违背了铁路资源的理念吗?

感谢您的意见。

1 个答案:

答案 0 :(得分:1)

通过运行rails generate scaffold -h,我看到了一个名为--skip-namespace的选项。这就是你要找的东西吗?

来自文档:

Usage:
  rails generate scaffold NAME [field[:type][:index] field[:type][:index]] [options]

Options:
    [--skip-namespace]                        # Skip namespace (affects only isolated applications)