저는 railstutorial.org의 Michael Hartl의 튜토리얼을 작성 중입니다. 5 장에서 라우팅을 작동시키는 데 어려움이 있습니다. 나는 노선이 각각레일스 구문 구문 오류
routes.rb
Rails.application.routes.draw do
root 'static_pages#home'
get 'static_pages/help'
get 'static_pages/about'
get 'static_pages/contact'
파일로 시작하는 경우 *이
static_pages_controller_test.rb
test "should get home" do
get :home
assert_response :success
assert_select "title", "Ruby on Rails Tutorial Sample App"
end
작품과 모든 테스트를 통과하지만 나중에 그가를 사용하여 구문을 변경하고자이 구문과 같은 테스트가 _path 규칙.
는 이제 시험은
class StaticPagesControllerTest < ActionController::TestCase
test "should get home" do
get root_path
.
.
end
test "should get help" do
get help_path
.
.
end
처럼 나는
root 'static_pages#home'
get '/help', to: 'static_pages#help'
get '/about', to: 'static_pages#about'
get '/contact', to: 'static_pages#contact'
에 경로를 업데이트하지만 지금은 모든 테스트가
ERROR["test_should_get_home", StaticPagesControllerTest, 2016-06-30 05:02:41 -0700]
test_should_get_home#StaticPagesControllerTest (1467288161.43s)
ActionController::UrlGenerationError: ActionController::UrlGenerationError:
No route matches {:action=>"/", :controller=>"static_pages"}
ERROR["test_should_get_help", StaticPagesControllerTest, 2016-06-30 05:02:41 -0700]
test_should_get_help#StaticPagesControllerTest (1467288161.43s)
ActionController::UrlGenerationError: ActionController::UrlGenerationError:
No route matches {:action=>"/help", :controller=>"static_pages"}
내 컨트롤러 뭔가를 보이는 메시지와 함께 실패 이쪽처럼
내가 뭘 잘못Prefix Verb URI Pattern Controller#Action
root GET/ static_pages#home
help GET /help(.:format) static_pages#help
about GET /about(.:format) static_pages#about
contact GET /contact(.:format) static_pages#contact
를 얻을 수 63,210
class StaticPagesController < ApplicationController
def home
end
def help
end
.
.
end
내가 레이크 경로를 실행하면?
녹색 시험을 볼 수 당신이 당신의 테스트/컨트롤러/static_pages_controller_test.rb를 업데이트 한 번 확신합니다. 그게 가능하니? 4 대 5? – mkrinblk
나는 이것을 향해 더 기대고있다. 나는 그가 튜토리얼을 업데이트했을 때 확신하지 못했지만, 지금은 그의 보석 파일에서 4th ed에 대해 레일 5.0.0이 나열되어 있지만 튜토리얼을 시작한 지 두 주 전에 나는 3th ed를 github에 사용하고 있었다고 생각한다. Rails 4.2.2를 나열하고 그 버전에서 그는 경로를 다르게 작성했습니다.* _path 구문과 관련된 두 버전간에 변경이 있었습니까? – mkrinblk
예 작성자가 지난 주 5.0.0으로 레일 튜토리얼을 업데이트했습니다. 당신이 그것을 업데이트하여 더 즐겁고 오류가없는 여행을 더 많이 만들어 줄 것을 제안합니다. 5.0.0에서 배울 새로운 것들을 얻을 것입니다. –