상세 컨텐츠

본문 제목

루비 온 레일스 시작하다

파이썬·장고·루비·알고리즘

by 김일국 2017. 1. 18. 21:09

본문

개인적으로 많이 늦은 감이 있으나, 현재 일본에서는 루비 기반의 프로그램 개발이 활성화 되어 있다고 하니

, 관심을 가지고 시작 하려고 합니다.

참고로 [루비] 언어 창시자는 일본인, [레일스] 프레임웍 창시자는 덴마크인 입니다.

관련내용 http://navercast.naver.com/contents.nhn?rid=122&contents_id=129981 참조

우리나라는 me2day.net 라는 네이버 서비스(종료됨)가 루비 온 레일스로 만들어 졌다고 알려져 있습니다.

 

일단 개발환경을 클라우드를 이용해서 온라인으로 작업하게 되었습니다.

처음에는 c9.io 인 클라우드9 을 사용하려고 하였으나, 현재 회원가입시 신용카드번호를 입력해서 본인 인증을 거치기 때문에 제외 되었습니다.

용량제한이 있으나 무료인 아래 3가지 클라우드를 이용하게 되었는데요,

네이버의 뿌리를 둔 구름(goorm.io) IDE 는 제가 처음으로 시도해 보았으나, 실패 (현재는 루비와 레일스 버전이 게시판을 만들정도로 구성되어 있지 않은듯 합니다. 앞으로 기회가 되면 다시 사용해 보려고 합니다.)

두번째로, codeanywhere.com 을(작동OK)

세번째로, codenvy.io 를 사용(작동OK)해 보았습니다.

추천은 codenvy.io를 사용하시길 추천드립니다.(터미널상에 Ctrl+C 와 Ctrl+V 가 가능하고, UI가 직관적 입니다.)

실습전 기본정보는 아래 사이트에서 공부했습니다.

참조URL: http://blog.saltfactory.net/ruby/speedly-developing-web-service-via-scaffolding.html

 

아래는 레일스의 scaffold (자동MVC생성명령) 기능으로 CRUD 게시판을 생성 성공한 내역을 공개 합니다.

https://codenvy.com 회원가입 후 로그인 > 대시보드 https://codenvy.io 접속
- 워크스페이스 생성
  Create Workspace 메뉴선택

또는
https://codeanywhere.com 회원가입 후 로그인 > 컨테이너생성 후
- 프로젝트 생성(ruby 우분투용)

- 작업화면 또는 콘솔에서 프로젝트 생성
user@...: rails new BlogApp > 필요시(bundle install)

- sqlite3 콘솔접속
sqlite3 db/development.sqlite3

- 테이블 생성
sqlite> create table posts ( 
id integer, 
name text, 
title text, 
content text, 
created_at datetime, 
updated_at datetime);

- DB핸들링 모델생성
user@...: rails generate scaffold Post name:string title:string content:text
bundle exec rake db:migrate

- 초기 서버 실행 에러때문에 아래 실행 후 서버실행
bundle exec rake db:drop
bundle exec rake db:create
bundle exec rake db:migrate
(필요한경우실행)bundle exec rake db:schema:load

**주) Codenvy 종료 후 다시 로그인 해서 프로젝트를 로드 할 때 snapshot을 불러올거냐고 물어보는 확인 창에서 Yes(기본값)을 선택해야 합니다. 그렇지 않으면, 기존 등록된 Db 내용이 사라집니다. 혹시 실수로 No를 누르면, bundle exec rake db:migrate 으로 테이블 스키마는 되살릴수 있습니다.

- 서버실행
코드nvy 는 UI상에서(아래그림참조)


또는
코드anywhere 는 터미널상에서(아래코드, 아래그림참조)
rails s --binding=0.0.0.0 [엔터]

 

- OK화면 (아래 URL)
코드anywhere 는(아래그림참조)
http://rubyone-kimilguk614978.codeanyapp.com:3000/posts


또는
코드nvy 는(아래그림참조)
http://node7.codenvy.io:38448/posts

 

다음 포스트에서는 scaffold(자동MVC코드생성) 기능이 아닌 MVC코드를 수동으로 생성하는 방법을 기록하도록 하겠습니다.

MVC수동 생성은 HTML코드 수정과 프로그램 커스터마이징에서 필요합니다.

 

관련글 더보기

댓글 영역