Rails 3 Scaffolding, Добавление маршрутов Вопрос - PullRequest
3 голосов
/ 09 сентября 2010

рельсы 3 новичка, с общим вопросом о добавлении дополнительного маршрута после строительных лесов.

Я создаю эшафот для книг ..., который прекрасно работает и обеспечивает хорошую страницу указателя.

На странице указателя отображаются все книги в системе, Я хотел бы добавить страницу "/ books / yours", которая показывает книги, созданные пользователем. Я уже добавил user_id в таблицу books, так что это работает, когда пользователи создают новые книги. Но я не могу понять, как добавить «твою» страницу ... Вот что я сделал:

В books_controller.rb добавлено:

  def yours
        @books = Books.all

        respond_to do |format|
      format.html # yours.html.erb
     format.xml  { render :xml => @notes }
    end
  end

Затем я добавил страницу views / books / yours.html.erb только с тегом H1, который говорит бинго ...

Затем в маршрутах .rb я добавил:

Cline :: Application.routes.draw do

  resources :books
  devise_for :users
    match '/books/yours', :to => 'books#yours'
    root :to => 'pages#home'

Но это не работает? Что я сделал не так? thxs!

1 Ответ

4 голосов
/ 09 сентября 2010

Вы могли бы сделать это:

resources :books do  
  collection do  
    get 'yours'  
  end 
end 

Так что URL выглядит так: / books / yours

Здесь все объяснено: http://edgeguides.rubyonrails.org/routing.html

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