Rails 3 вложенных маршрутов контроллеров доступа - PullRequest
1 голос
/ 27 ноября 2010

У меня есть вложенный маршрут как:

resources :wsps do
    member do
     get :location
     get :password
    end

    resources :services
  end

Я могу получить доступ ко всем путям (например, new_wsp_service_path) через представления служб и контроллер служб, однако я не могу сделать то же самое с использованием представлений wsp.Он говорит, что не признает действие "новый".

Я хотел бы знать, как я могу использовать new_wsp_service_path также в представлениях Wsps.

Я пытался добавить это в шоу контроллера wsp, но все еще не исправляет:

def show
    @wsp = Wsp.find(params[:id])
    @title = @wsp.name
    @services = @wsp.services
   @page_name = "overview"
   respond_to do |format|
      format.html # index.html.erb
      format.xml  { render :xml => @services }
    end
  end

спасибо.

1 Ответ

1 голос
/ 27 ноября 2010

Убедитесь, что вы передаете объект Wsp при вызове помощника пути. Откройте консоль рельсов (rails c) и попробуйте это: *

app.new_wsp_service_path       # => ERROR!
app.new_wsp_service_path(1)    # => should work
@wsp = ...                     # get a Wsp record
app.new_wsp_service_path(@wsp) # => should work

Я часто сталкиваюсь с этой ошибкой, когда забываю передать запись во встроенный маршрут. Если это не решит вашу проблему, пожалуйста, опубликуйте вывод команд выше, а также убедитесь, что ваш маршрут настроен с использованием rake routes | grep new_wsp_service.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...