проблема link_to - PullRequest
       4

проблема link_to

0 голосов
/ 26 апреля 2011

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

У меня есть три контроллера (авторы, страницы и static_pages).Все они работают нормально, но я пытаюсь сделать ссылку на две страницы в static_pages.Это about.html.erb и help.html.erb.Я использую частичную для создания меню навигации в верхней части.

Я получаю следующую ошибку:

ActionController::RoutingError in Pages#index

No route matches {:controller=>"pages", :action=>"about"}

1: <%= link_to 'Homepage', pages_path %> |
2: <%= link_to 'List of Authors', authors_path %> |
3: <%= link_to 'About', :action => 'about' %> |
4: <%= link_to 'Help', :action => 'help' %>

Код в моем частичном меню:

<%= link_to 'Homepage', pages_path %> |
<%= link_to 'List of Authors', authors_path %> |
<%= link_to 'About', :action => 'about' %> |
<%= link_to 'Help', :action => 'help' %>

Мой контроллер static_pages выглядит следующим образом:

class StaticPagesController < ApplicationController
  def About
  end

  def Help
  end
end

Я понимаю, что, возможно, это что-то очень простое, но, как я уже сказал, я новичок в Rails и веб-разработке в целом, поэтому любые советы будут оценены.

Ответы [ 3 ]

3 голосов
/ 26 апреля 2011

Тривиально, сделайте ваши методы действия строчными.Ruby чувствителен к регистру с именами переменных и методов.

class StaticPagesController < ApplicationController

  def about 
  end

  def help 
  end

end
0 голосов
/ 26 апреля 2011

Вы проверили свои маршруты, используя рейковые маршруты в своем терминале / консоли?Если нет, то это хороший способ решить проблемы, связанные с ошибками маршрута.

0 голосов
/ 26 апреля 2011

Убедитесь, что ваши методы link_to пытаются получить доступ к StaticPagesController. Похоже, ваша ошибка указывает на то, что Rails пытается создать URL-адрес для действия about с помощью PagesController.

Проверьте документы для ActionView:: Helpers :: UrlHelper , особенно методы link_to и url_for.

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