루비 온 레일즈(Ruby on Rails)

폴더 구조


MVC 구조

엑티브 레코드

에셋 파이프라인

루비 온 레일즈 4

루비를 기반으로 한 다른 프레임워크

  • Sinatra : 루비 기반 경량 웹 프레임워크
  • Padrino : Sinatra를 기반으로 한 좀 더 다양한 기능을 지원해주는 웹 프레임워크

루비 온 레일즈와 젬

루비 온 레일즈는 전형적인 오픈소스 문화권에서 개발된 웹 개발 프레임워크로 오픈소스 젬(루비에서 라이브러리에 해당하는 것들을 지칭)을 활용한 빠른 프로토타이핑을 가장 큰 특징으로 들 수 있다. 프로토타이핑이라고 했지만 전형적인 문제를 해결해주는 라이브러리를 비롯해 개발 과정 전체에서 활용도가 높은 플러그인들도 있으며, 프로덕션에 바로 도입해도 좋을 만큼 완성도가 높은 젬들도 많이 있다. 이 문서에서는 레일즈 개발자로서 자주 사용하게 되는 젬들을 정리한다.

여러 데이터베이스 사용하기

database.yml

another_database:
  adapter: mysql2
  username: root
  password: 00000000
  pool: 5
  timeout: 5000
  encoding: utf8
  host: 192.168.1.107
  port: 3306

모델 설정

class Post
  establish_connection Rails.configuration.database_configuration["another_database"]
  self.table_name = :post
  self.primary_key = :post_id

  ...
end

개발 지원 도구

관리자 도구

데이터베이스

API

프레젠터

이메일

자바스크립트, Ajax 관련

인증, 권한 관리

테스트

정적 분석 도구

프리로더

배포


Who am I?