Rails 가이드북 – Windows용

목차

1. Ruby 설치

2. Ruby on Rails 설치

3. 소스코드 에디터 설치

4. 프로젝트 생성

5. Q&A

본문

1. Ruby 설치

1.1 Ruby홈페이지에서 안정 릴리스 Ruby버전을 확인합니다.    | 접속 사이트 : https://www.ruby-lang.org/ko/downloads/

rails1

1.2 안정 릴리스 버전의 RubyInstallers를 다운받습니다.    | 접속 사이트 : http://rubyinstaller.org/downloads/

rails2

1.3 다운받은 RubyInstaller를 실행해서 Ruby 설치를 진행합니다. 설치 진행 중에 옵션 선택화면이 나오면 모두 선택해줍니다.

rails4

 

2. Ruby on Rails 설치

2.1. [Download Latest]를 눌러서 RailsFTW 최신버전을 다운로드 받는다.   | 작업 사이트 : https://railsftw.bryanbibat.net/

rails5

2.2 다운받은 RailsFTW를 실행해서 Rails 설치를 진행합니다. 설치 진행 중에 옵션 선택화면이 나오면 모두 선택해줍니다.

rails6

2.3 RailsFTW의 장단점

RailsFTW(Ruby on Rails For the Windows)는 윈도우 환경에만 설치가 가능한 레일스 인스톨러다.

레일스 개발을 위한 최소한의, 그러나 하나의 완전한 패키지로서 2014년 5월 20일 현재 RailsInstaller 보다 더 높은 레일스 버전을 지원하는 것이 장점이다

.rails7

RailsFTW 는 윈도우즈 8 과는 충돌이 발생할 수도 있으며 RubyInstaller DevKit 이 포함되어 있지 않기 때문에 DevKit 을 필요로 하는 젬을 설치하기 위해서는 RubyInstaller 웹사이트에서 직접 다운로드 해야 한다는 단점을 가지고 있다.

* Ruby Devkit : Ruby에서는 native 모듈 (C/C++로 짜여진 모듈)을 gcc로 컴파일러 하는데, Windows에서 이러한 컴파일 환경을 설정하려면 Ruby Devkit을 인스톨해주면 된다.

2.4 참고사항

1. 루비 콘솔을 사용하기 위해서는 시작 메뉴 > RailsFTW > Start Command Prompt with Ruby 를 실행한
다. 다른 개발환경의 매뉴얼을 참고하고 있다면 레일스와 관련한 커맨드를 사용할 때 해당 콘솔을 사용하면
된다.
2. Git , Vim 을 비롯한 “기본적인” 개발 관련 유틸리티는 1번의 콘솔에서 사용이 불가하므로 콘솔과는 별개
로 설치해서 사용한다.
3. msysgit (윈도우즈용 git)을 별도로 설치하면 git 을 사용할 수 있다.
4. 소스코드 에디터는 Sublime Text Editor 를 사용하면 불편함이 없다.
5. Console2 을 설치하여 사용하면 cmd.exe 의 불편한 점을 다소 해소할 수 있다.
6. ImageMagick 을 다운로드 받아 설치하면 이미지 업로드시 이미지 작업을 할 수 있다.
7. Ghostscript 를 다운로드 받아 설치하면 PDF 파일을 업로드시 쎔네일 이미지를 생성할 수 있다.
8. 혹시 rake db:migrate 할 때 타임존 데이터가 없다는 에러가 발생하면 Gemfile에 gem ‘tzinfo-data’, platforms: [:mingw, :mswin] 를 추가하고 config.ru 파일에 require ‘tzinfo’ 추가하면된다.

3. 소스코드 에디터 설치

3.1 소스코드 에디터 종류입니다. (본글에서는 Atom에디터를 사용합니다.)

○ Textmate : 레일스 코어팀이 사용하는 맥전용 에디터 (유료)
○ Sublime Text Editor 2 / 3 : 리눅스/맥/윈동용 텍스트 및 소스코드 에디터로 최근에 더 인기있는 에디터 (무료/유료)
○ Atom : 리눅스/맥/윈도우용 텍스트 및 소스코드 에디터로 Github에서 최근에 배포하였으며 Sublime Text
○ Editor와 유사한 인터페이스를 가지고 있음 (무료)
○ Vim + vim-rails: 유명한 유닉스 에디터로 맥용/윈도우용도 있음. (무료)

3.2 Atom 사용방법

https://www.opentutorials.org/module/1579 사이트에서 동영상을 참고하세요.

출처 : opentutorials.org

 

4. 프로젝트 생성

4.1 시작메뉴 > RailsFTW > Start Command Prompt with Ruby를 선택해서 터미널을 실행합니다.

rails8

4.2 터미널에서 명령어로 Ruby 버전과 Rails 버전을 확인할 수 있습니다.    | 명령어 > Ruby : ruby -v | Rails : rails -v

rails9

4.3 ‘rcafe’ 프로젝트를 생성합니다.    | 명령어 > rails new rcafe

r1

4.4 프로젝트 생성이 진행되고 마지막에 다음과 같은 메시지가 뜬다면 ‘rcafe’폴더 안의 ‘Gemfile’ 파일을 열어서 적혀있는 주소들의 https 들을 모두 http로 바꿔줍니다.

r3

4.5 ‘rcafe’ 폴더에서 rails 서버를 가동합니다. 부팅이 완료되면 접속 URL(http://localhost:3000)을 알려주고 URL로 접속해서 정상으로 가동했는지 확인합니다.    | 명령어 > 서버가동 : rails server / 서버종료 : Ctrl + c

r7

r8

4.6 ‘rcafe’ 폴더안의 ‘Gemfile’ 파일을 열어서 그림과 같이 입력해서 gem을 등록합니다.

r4

4.7 터미널에서 ‘rcafe’ 경로로 이동하고 Gemfile의 gem 목록들을 bundle 설치를 통해 설치합니다. 설치가 완료되면 gem들이 정상적으로 설치된 것을 확인할 수 있습니다.    | 명령어 > bundle install

r5

r6

4.8 Bootstrap Asset 설정을 합니다. rcafe/assets/stylesheets/ 디렉토리 상의 application.css를 삭제하고 대신에 application.scss 파일을 생성하고 아래와 같이 추가합니다.

r11

4.9 Bootstrap의 모든 자바스크립트 헬퍼를 사용하기 위해서는 app/assets/javascripts/application.js 파일을 아래와 같이 수정합니다.

r9

4.10 Bootstrap 과 Simple_form 을 연결하기 위해 ‘rcafe’ 폴더에서 아래와 같이 Simple_form 을 –bootstrap 옵션과 함께 설치한다.    | 명령어 > rails generate simple_form:install –bootstrap

r10

5. Q&A

Q. Gemfile이 무엇인가요?

A. rails 프로젝트를 생성하면 프로젝트 루트 디렉토리에 Gemfile 파일이 자동으로 생성됩니다. Gemfile은 다양한 gem을 등록하는 파일로 텍스트 파일입니다.

Q. Gemfile.lock이 무엇인가요?

A. 프로젝트 디렉토리를 유심히 보면 Gemfile.lock 파일을 찾을 수 있다. 이 파일은 bundle install 로 설치된 gem들의 버전을 기억해 두는 파일이라고 생각하면 됩니다. 따라서 이 파일은 소스관리(Git)에 포함해 두는것이 좋습니다. 이것은 다른 개발자가 동일한 소스로 개발할 때 동일한 gem 버전을 사용할 수 있게 해주어 호환성의 문제를 해결할 수 있는 방법이 되기도 합니다.

Q. gem이 무엇인가요?

A. 여기서 gem이란 다른 언어에서 흔히 접하게 되는 일종의 루비 라이브러리라고 간단하게 생각하면 됩니다. 이미 많은 gem들이 공개(http://rubygems.org)되어 있기 때문에, 우리는 그저 필요한 gem을 Gemfile에 등록해서 사용하면 됩니다.

Q. bundle 역할이 무엇인가요?

A. 프로젝트 루트 디렉토리에 gem 목록들이 등록되어 있는 Gemfile을 실행해서 gem을 설치합니다.

Q. 4.8 ~ 4.10의 과정들은 왜 해주나요? Gemfile에 ‘bootstrap-sass’ 과 ‘simple_form’ gem을 등록해서 설치하면 끝 아닌가요?

A. Bootstrap을 실제로 프로젝트에 적용하기 위해서는 약간의 설정 과정이 필요합니다.

Q. rails 설치하는 방법을 다른 블로그에서 찾아보니 gem install bundler 명령어를 해주던데. 왜 여기서는 이 과정이 빠져있나요.

A. rails 3.0버전 이상에서는 bundler가 자동으로 설치됩니다.