2011-03-29 6 views
0

내 Ruby on Rails 환경이 거의 작동하지 않아서 걷고 내 hello world 앱을 가져와 다른 방법을 추가했는데 경로 일치가 표시되지 않습니다.첫 번째 ROR 컨트롤러 - 경로 일치 없음

say_hello_controller.rb라는 컨트롤러를 만들고이 코드를 안에 넣습니다.

class SayHelloController < ApplicationController 
    def index 
    render :text => "Hello World" 
    end 

    def bye 
    render :text => "bye bye" 
    end 
end 

여기에 오류 http://screencast.com/t/h3ke1hjg8가 있습니다.

이상한 점은 http://localhost:3000/say_hello/index입니다.

무엇이 누락 되었습니까?

답변

0

귀하의 설정/routes.rb은 안녕/say_hello의 기록이없는

추가 할 것 :

match 'say_hello/bye' => 'say_hello#bye' 

내가 루트/자원에 대한 이해를 얻을 수 http://guides.rubyonrails.org/routing.html#resource-routing-the-rails-default를 읽어 보시기 바랍니다 그러나.

+0

좋습니다. 이제 작동합니다. 나는 그것을 더 많이 이해하기 위해 가이드를 여기에서 읽어야 할 것이다. 요점은 자동으로 삶을 더 쉽게 만들었고 물건들을 묶어서 구성 할 필요가없는이 컨벤션을 가지고 있다고 생각했습니다. configs에서 라우트를 배치하는 것이 약간의 방법으로 보이는 것 같습니다 :) – CacheMan

+0

포인트가 configs에 라우트를 넣지 않습니다 - 핵심은 표준 경로를 사용하지 않는다는 것입니다. "와일드 카드"경로를 켤 수 있습니다. 즉, 정의한 모든 동작을 찾을 수 있지만 RESTful은 아닙니다. 기본적으로 레일 경로는 index, show, new, create, edit, update 및 delete입니다. 그 중 7 개는 할 일에 충분해야하며 가끔 맞춤 경로를 추가하는 것은 매우 쉽습니다. – Andrew

관련 문제