2012-01-03 3 views
1

В моем приложении я использую многоуровневые пространства имен. Например, у меня есть следующий контроллер:Пространства имен и маршрутизация

class Admin::Userdesk::AccountsController < ApplicationController 
    def show 
     .... 
    end 

    def edit 
     .... 
    end 
end 

В моем routes.rb я имею следующее:

namespace :admin do 
    namespace :userdesk do 
     resource :dashboards do 
     end 
     resource :accounts do 
     end 
    end 
end 

Вопрос Я вижу, если я пытаюсь связать или перейти к/админ/userdesk/счет/шоу/1 или/администратор/userdesk/счет/редактировать/1 я получаю исключение

No route matches [GET] "/admin/userdesk/accounts/show/1"

No route matches [GET] "/admin/userdesk/accounts/edit1"

Я не совсем уверен, где я объединил свою маршрутизацию. Любая помощь с этим очень ценится.

ответ

3

Возможно, ваша проблема связана с маршрутами, которые вы тестируете, а не с рельсами. Попробуйте это:

Вместо /admin/userdesk/accounts/show/1 Попробуйте /admin/userdesk/accounts/1

И вместо /admin/userdesk/accounts/edit/1 Попробуйте /admin/userdesk/accounts/1/edit

Те должны работать с текущими маршрутами.

Edit:

Я также заметил, что вы используете resource в вашем routes.rb. Вероятно, вы должны изменить это на resources (множественное число).