레이블이 Hello World인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Hello World인 게시물을 표시합니다. 모든 게시물 표시

2010년 8월 15일 일요일

ralis로 간단한 WebPage 만들기


Ruby on Rails를 설치한 이후, 간단한 web page를 만들어 보았다.
그냥 'Hello World!'를 찍어내는 web page이다.


우선 이 web을 관리할 디렉토리를 하나 만들고 그 안에서 작업을 수행토록 한다.

$ mkdir Web
$ cd Web
$ rails testBlog

rails명령에 의해 온갖 것들이 생성이 된다.
화면에 생성되는 파일들이 죽 써지게 되는데, 이것이 끝나면 생성된 폴더를 확인해보자.
ls 명령어를 수행해보면 testBlog라는 폴더가 생성된 것이 보일 것이다.

이 디렉토리로 들어가보면 여러가지가 보일 것이다.
여기서 web page를 하나 생성해보자.
page의 이름은 test로 하겠다.

$ ./script/generate controller test

그러면 또 무언가 파일들이 생성이 된다.
생성된 파일 중 하나를 수정해 보자.

$ vi ./app/controllers/test_controller.rb

위의 파일을 열어 class 내부에 다음과 같은 부분을 새로 넣는다.
def index
render :text => "Hello, World!"
end

저장하고 빠져나와서 web page를 실제로 보자.
web page를 브라우저에서 보기 위해서는 server가 구동되고 있어야 한다.
손쉽게 local에서 server를 구동시킬 수 있다.

$ ./script/server
=> Booting Mongrel
=> Rails 2.3.8 application starting on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server

이런 식으로 server가 구동되는데,
safari 등의 브라우저를 열어서 http://0.0.0.0:3000 이라고 주소를 적어주면 환영 메세지가 나오게 되어있다.

방금 만든 page로 가기 위해서는 주소 창에 http://0.0.0.0:3000/test 라고 주소를 적어주면 된다.
화면에  Hello, World! 라는 글자가 보이면 성공!!



가끔 Routing Error가 날 수 있다.
No route matches "/test" with {:method=>:get}

이 에러를 수정하기 위해서는 routes.rb파일을 고쳐준다.

$ vi ./config/routes.rb

파일을 열어서 다음을 추가한다.

map.connect '*url', :action => 'show_page'

구글님이 알려줘서 그렇게 추가하기는 했지만 무슨 뜻인지는 좀 더 공부를 해봐야 겠다.