'뷰 생성하기'에 해당되는 글 1건

  1. 2008/05/15 Ruby on Rails 시작하기(6).. 뷰 생성하기 (4)
2008/05/15 14:30

Ruby on Rails 시작하기(6).. 뷰 생성하기

Ruby on Rails 뷰 생성하기

 지난번에는 간단하게 컨트롤러에서 직접 텍스트를 출력해 보았습니다. 하지만 레일즈의 MVC 규약을 따르고자 한다면 당연히 텍스트는 뷰에서 출력해야 맞겠죠?

그럼 어떻게 컨트롤러에 있는 녀석을 뷰에다 넣는지 간단하게 알아보도록 하겠습니다.

레일즈는 다른 웹 프레임워크 처럼 템플릿을 지원합니다.

우선 뷰를 생성해 보겠습니다. 아래와 같이 /views/greeting/index.rhtml 파일을 생성하겠습니다.
사용자 삽입 이미지

생성한 html 파일에 다음과 같이 보여줄 문구를 작성합니다.
<h1>Greeting#index</h1>
<p>Find me in app/views/greeting/index.rhtml</p>

그리고 이전에 만들었던 컨트롤러 안의 내용은 삭제 하도록 하겠습니다.
 class GreetingController < ApplicationController
  def index
    render :text => "<h1>Welcome to your first Rails application</h1>" -> 삭제
  end
end
위와 같이 작성하고 익스플로러에서 "새로고침"을 하면 ?  아래와 같은 페이지가 뜨는 것을 볼 수 있습니다.
URL 에는 index 라는 액션이 지정되어 있지 않은데 이것은 기본적으로 index를 찾게 설정이 되어 있나 봅니다.

사용자 삽입 이미지

컨트롤러와 뷰 연동하기

MVC 에서는 일반적으로 컨트롤러가 제공하는 모델데이터를 출력(렌더링) 합니다. 그럼 컨트롤러에 선언되어 있는 값을 어떻게 뷰에서 출력하는지 알아보도록 하겠습니다.

우선 컨트롤러에 아래와 같이 작성해 보도록 하겠습니다.
 class GreetingController < ApplicationController
  def index
    @welcome_message="Welcome to your first Rails application"
  end
end
@ 는 변수를 선언할때 쓰는 것인가 봅니다 ^^

그리고 뷰에도 역시 화면에 렌더링할 녀석을 작성해 줍니다.
<h1><%= @welcome_message %></h1>
<%= 와 %> 태그 사이에 루비 표현식을 추가함으로써 뷰에 새로운 메세지를 출력해보도록 하겠습니다.
이제 다시 "새로고침"을 해보겠습니다.

사용자 삽입 이미지

짠~ 컨트롤러의 인스턴스 변수에 셋팅한 메세지가 화면에 렌더링된 결과를 볼 수 있습니다.
이거 정말 간단하네요. 이렇다할 설정없이 이미 지정된 네이밍 컨벤션을 이용하여 정말 간단하게
컨트롤러와 뷰를 작성해서 화면에 뿌려줬네요 ^ㅡ^

저 같이 환경 셋팅하고 서버 설정하고 컨텍스트 설정하고.. 이런거에 귀차니즘을 느낀 사람이라면
편리하고 빠르고 쉽게 개발을 할 수 있겠다란 생각을 갖게 되네요 ㅋㅋ 자~ 앞으로도 할일이 많으니
계속 진행해 보도록 하겠습니다.

ps. 오늘은 일단 시간이 없어서 여기까지 하고 다음에 연재 하도록 하겠습니다. ^^
크리에이티브 커먼즈 라이선스
Creative Commons License
이올린에 북마크하기(0) 이올린에 추천하기(0)
Trackback 0 Comment 4