Ruby on rails 在Rails中,如何为一个资源设置两组路由?(照片和相册的示例类别)

Ruby on rails 在Rails中,如何为一个资源设置两组路由?(照片和相册的示例类别),ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,我有分类模型,相册和照片都共享该模型。我需要使用/photos/Categories下的照片类别和/albums/Categories下的相册类别。我该怎么做 我试着去做,但失败了。首先,我设置如下路线: namespace :albums do resources :categories end namespace :photos do resources :categories, controller: 'photos/categories' end link_to ca

我有
分类
模型,相册和照片都共享该模型。我需要使用
/photos/Categories
下的照片类别和
/albums/Categories
下的相册类别。我该怎么做

我试着去做,但失败了。首先,我设置如下路线:

namespace :albums do
    resources :categories
end

namespace :photos do
    resources :categories, controller: 'photos/categories'
end
link_to category.name.titleize, photos_category_path(category)
然后在视图中,我打印了如下类别链接:

namespace :albums do
    resources :categories
end

namespace :photos do
    resources :categories, controller: 'photos/categories'
end
link_to category.name.titleize, photos_category_path(category)
链接很好,但当我访问它们时,我会出现以下错误:

uninitialized constant Photos
我做错了什么


谢谢

我认为两个
类别
控制器都需要在各自的名称空间中定义:

# controllers/albums/categories_controller.rb
module Albums
  class CategoriesController < ApplicationController
    ...
  end
end

# controllers/photos/categories_controller.rb
module Photos
  class CategoriesController < ApplicationController
    ...
  end
end
#控制器/相册/类别_controller.rb
模块相册
类分类控制器<应用程序控制器
...
结束
结束
#控制器/照片/类别\u controller.rb
模块照片
类分类控制器<应用程序控制器
...
结束
结束

您的控制器的名称是什么?您在内部目录中有控制器吗?@控制器是Photos,另一个是Albums。还有一个名为Categories的。没有内部控制器。谢谢,它成功了!我不得不从路由中删除
控制器:“照片/类别”
部分,并将
添加到两个类:-)