2014-12-29 1 views
0

Я работал до листинга 3.5 в Rails Tutorial: (https://www.railstutorial.org/book/static_pages#fig-config_directory_rails)«RoutingError» и «Нет маршрут не совпадает ...» от Rails Tutorial

К сожалению, несмотря на соблюдение всех направлениях до этого момента в книги, я не могу открыть "рельсы-учебник ... c9.io/static_pages/home" ошибка показывает следующее:

Started GET "/static_pages/home" for 73.10.170.180 at 2014-12-29 02:18:23 +0000 

ActionController::RoutingError (No route matches [GET] "/static_pages/home"): 

Мой routes.rb файл:

Rails.application.routes.draw do 
get 'static_pages/home' 
get 'static_pages/help' 
end 

Мои application_controller.rb файл:

class ApplicationController < ActionController::Base 
# Prevent CSRF attacks by raising an exception. 
# For APIs, you may want to use :null_session instead. 
    protect_from_forgery with: :exception 

def hello 
    render text: "hello, world!" 
end 
end 

Не совсем уверен, что с этим делать; Я попытался перезапустить сервер Rails, а также повторил учебник главы 3 (вплоть до листинга 3.5 при возникновении ошибки), чтобы я ничего не пропускал по этим указаниям.

Спасибо всем!

+0

Это можно исправить, изменив Rails.application.routes.draw сделать прибудут «static_pages/дома» => "приложение # привет" получить 'static_pages/помощь' => "приложение # HELLO" конца Однако это не способ Rails сделать это. Для вашего случая использования вам нужно создать отдельный контроллер, как предположил @Mukul. – skmvasu

ответ

1

У вашего static_pages_controller.rb должно быть место и помощь там.

class StaticPagesController < ApplicationController 
    def home 
    end 

    def help 
    end 
end 

Добавьте это на свой статический_pages_controller.rb, перезапустите сервер, и он должен работать.

Смежные вопросы