【问题标题】:Rails3 routing: Resource with namespaceRails3 路由:具有命名空间的资源
【发布时间】:2010-07-06 15:10:29
【问题描述】:

在定义我的路由时是否可以定义命名空间参数,像这样:

resource :account, :namespace => :account do
    resources :comments
end

所以/account/comment 调用Account::CommentsController 而不仅仅是CommentsController。请注意,上面的:namespace-选项似乎不起作用。

我当然可以将:controller => 'account/comments' 添加到 cmets 资源中,但是有很多嵌套资源,这不是很干燥。

有没有更好的办法?

谢谢你们——你们真棒!

【问题讨论】:

    标签: ruby-on-rails routing ruby-on-rails-3


    【解决方案1】:

    好的,经过一番挖掘,我似乎找到了解决方案:

    resource :account, :controller => 'account' do
        scope :module => 'account' do
            resources :comments
            ...
        end
    end
    

    这会导致:

    /account/comments 链接到 Account::CommentsController,同时仍然能够使用 /account 访问常规 CRUD 方法

    【讨论】:

    • 这是更清洁的方法吗?应该是另一种方式。无论如何,谢谢你
    猜你喜欢
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 2012-05-04
    • 1970-01-01
    • 1970-01-01
    • 2011-05-25
    • 1970-01-01
    • 2014-11-24
    相关资源
    最近更新 更多