루비 언어로 작성된 웹 어플리케이션 프레임워크.
개발을 시작할 때 필요한 초기 준비나 가정들을 쉽게 만들수 있는 도구를 제공하여 프로그래밍을 더 쉽게 만들수 있도록 설계 되어있다.
> Rails_Guides
DRY Don't Repeat Yourself 같은 코드가 존재한다면 그것은 나쁜 것이다.
COC Convention over Configuration 설정보다 규약이 중요하다.
UI와 비즈니스 로직의 분리. DRY 유지의 편이성. 유지보수를 위한 코드 관리의 편이성이 장점이다.
레일즈 어플리케이션을 젬의 의존성을 기본적으로 번들러를 통해서 관리한다. 생성된 Gemfile 에 기술된 젬 외에 다른 젬은 필요없다.
bundle install
config/database.yml 설정 파일의 development에서 수정한다.
development:
adapter: postgresql
encoding: unicode
database: blog_development
pool: 5
username: blog
password:
rails server
$ rails generate scaffold Post name:string title:string content:text
데이터베이스 테이블을 간단하게 생성하고 수정할 수 있도록 설계된 루비 클래스.
class CreatePosts < ActiveRecord::Migration
def self.up
create_table :posts do |t|
t.string :name
t.string :title
t.text :content
t.timestamps
end
end
def self.down
drop_table :posts
end
end