Прежде всего, довольно новый для Rails. Я слежу за учебником по использованию команды «link_to» - в основном, у меня есть некоторые ссылки с текстом «О нас», «Часто задаваемые вопросы», «Свяжитесь с нами», и я хочу, чтобы они ссылались на их соответствующие страницы.Rails 3.2.7 и link_to
После урока, код в моем файле contact_us.html.erb выглядит следующим образом:
<%= link_to "About Us", {:controller => ‘static_pages’, :action => ’about_us’} %>
Мой контроллер называется static_pages_controller.rb
и у меня есть about_us
метод в этом файле, без кода в нем:
def about_us
end
Мой код контроллера:
class StaticPagesController < ApplicationController
def about_us
end
def faq
end
def contact_us
end
def t_and_c
end
def t_and_c_competition
end
def show
end
end
Я получаю сообщение об ошибке:
NameError in Static_pages#contact_us
undefined local variable or method `‘static_pages'......etc
Любые идеи, что не так? Я думаю, это может быть потому, что учебник предназначен для рубинов 1.8.6 и Rails 2.0.2, и у меня есть Ruby 1.8.7 и Rails 3.2.7. Я слышал, что Rails печально известен тем, что не поддерживает обратную совместимость. Должен ли я изменить свой код? К чему? Спасибо за любую помощь.
C.
Привет, добавлено в выше. Изменен
CHarris
У вас есть маршрут, объявленный для статических страниц? – muttonlamb
** Ваша версия Rails устарела и уязвима для многочисленных уязвимостей безопасности! Немедленное обновление! **. Кроме того, Ruby 1.8.7 больше не будет поддерживаться в июне, вы должны как можно скорее переключиться на Ruby 1.9 или 2.0. –