
오늘 오전에 Ruby에 관련된 포스팅을 해서 그런지 문득 Xcode에서도 RoR 환경을 지원하는지 궁금하여 자료를 찾아 보았습니다. ADC의 Developing Rails Applications on Mac OS X Leopard 에서 관련된 내용을 찾을 수 있었습니다. 이 문서를 참조하여 간단히 설명해 보겠습니다.
1. Rails 업그레이드
Xcode에서 사용하기 위해서는 Rails 2.*로 업그레이드를 해야 합니다. (주의: 조금 지난 서적들과 예제들은 Rails 1.*로 설명이 되어 있습니다. 업그레이드를 하시면 변경된 부분 때문에 따라하기 어려울 수 있습니다.)
터미널에서 아래와 같이 명령어를 실행하여 최신버젼으로 업그레이드를 합니다.
$ sudo gem update --system
$ sudo gem install rails
$ sudo gem update rake
$ sudo gem update sqlite3-ruby
$ sudo gem install rails
$ sudo gem update rake
$ sudo gem update sqlite3-ruby
설치가 완료된 후에 'rails -v'로 버젼을 보면 현재 '2.1.0'으로 업그레이드 되어 있는 것을 확인할 수 있습니다.
2. 프로젝트 생성
터미널에서 아래의 명령어를 실행하여 프로젝트를 생성합니다. 결과가 출력되면서 해당 디렉토리 밑에 WishList란 디렉토리가 생성되어 있습니다.
$ rails WishList
$ cd WishList
$ cd WishList
WishList 디렉토리에서 아래와 같이 명령어를 입력하여 MyWish의 scaffold를 생성합니다.
$ script/generate scaffold MyWish name:string price:integer url:string memo:text
3. Xcode Organizer
1) WishList 등록
Xcode를 실행하고 메뉴에서 Window/Organizer를 클릭합니다.

위와 같이 Organizer가 실행되되면 finder에서 위에서 만든 WishList 디렉토리를 좌측의 PROJECTS & SOURCES가 있는 영역으로 드래그하여 가져다 놓습니다. 아래와 같이 PROEJCTS & SOURCES 아래에 WishList가 등록된 것을 확인합니다.


2) migration
추가된 WishList를 클릭한 후에 툴바의 Action을 클릭한 채로 있으면 아래와 같이 실행 메뉴가 나옵니다. db:migrate를 선택합니다.

아래와 같이 성공적으로 실행되었다는 메시지창이 출력됩니다.

3) 웹서버 실행

아래와 같이 제목을 'run server'로 변경하고 Directory를 'Top Level Organizer Item'으로 선택합니다. 그리고 Command에 'script/server'를 입력한 후 OK 버튼을 클릭하여 저장합니다.

실행되면 아래와 같이 서버가 3000 포트에서 실행되고 있다는 것을 확인할 수 있습니다.
WEBrick으로 실행될줄 알았는데 친절하게 Mongrel도 이미 설치되어 있는 것 같습니다.

4. 테스트
사파리나 파이어폭스의 주소창에서 'http://localhost:3000/'을 입력하면 아래와 같이 Ruby on Rails의 기본페이지를 확인할 수 있습니다.

이제 다시 주소창에서 http://localhost:3000/my_wishes 를 입력합니다. 목록 하단의 'New my wish'를 클릭하여 아래와 같은 입력폼이 나오면 각 필드를 입력 후에 하단의 'Create' 버튼을 클릭합니다.

목록으로 돌아 오면 아래와 같이 입력한 내용이 등록되어 있음을 확인할 수 있습니다.

터미널에서도 SQLite을 실행하여 테이블과 레코드를 확인할 수 있습니다.

혹시나 RoR을 Xcode를 이용할 수 있는지 알아 보았는데, 제가 아직 방법을 잘 몰라서 그런지 오히려 그냥 터미널에서 개발하는 것 보다 더 불편한 것 같습니다.
짧은 생각으로는 Ruby on Rails + (Prototype + script.aculo.us)가 최상의 웹 개발환경인 것 같은데, 생각 처럼 그렇게 많은 곳에서 사용하지는 않는 것 같습니다. 제가 모르는 어떤 이유가 있는 것 같습니다.
'기타 > 자잘한 Tip' 카테고리의 다른 글
Python에서 sqlite3 사용하기 (1) | 2009.08.26 |
---|---|
텍스트파일 문자셋 변환 스크립트 (6) | 2008.08.25 |
Dashcode로 올블로그 RSS 위젯 만들기 (2) | 2008.05.22 |
자주 사용하는 MySQL 명령어 (4) | 2008.02.28 |
flex2 - xml을 이용한 동적 메뉴 예제 (0) | 2008.02.01 |