CONFIGURING RAILS APPLICATIONS


Part 2 - Configuring Assets, Configuring Generators 


이한국(@majestin)
2014.05.27(Tue)

Asset ?




레일즈 어플리케이션에 포함되어 있는 
Javascript, StyleSheet, Image 등과 같은 파일들을 의미

Asset pipeline ?


1. Concatenate (병합)

2. Minify (압축)

3. Precompile (사전컴파일)

사용자들의 웹페이지 요청시 request 수를 줄이기 위함

-> 클라이언트에게 좀 더 나은 사용 환경을 제공하기 위함

Sprockets, Tilt

Sprocket

지정된 경로상의 모든 asset들을 압축작업하여 
public/assets 경로상에 위치시킴
$ Rails.application.config.assets.paths # 지정된 경로 확인


Haml, Sass, erb와 같은 파일 종류를 
asset pipeline에서 사용할 수 있도록 도와줌

$ Rails.application.config.assets.paths # 지정된 경로 확인


"/rails-config/app/assets/images", 
"/rails-config/app/assets/javascripts", 
"/rails-config/app/assets/stylesheets", 
"/rails-config/vendor/assets/javascripts", 
"/rails-config/vendor/assets/stylesheets", 
"/usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/turbolinks-2.2.2/lib/assets/javascripts", 
"/usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/jquery-rails-3.1.0/vendor/assets/javascripts", 
"/usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/coffee-rails-4.0.1/lib/assets/javascripts"

MD5 Fingerprints ?




파일 이름을 파일의 내용에 의해서 만드는 방법. 
파일 내용이 변경 될 때 파일이름 또한 변경.


예) main.css 라는 CSS 파일명은 
MD5 digest 값이 파일명의 끝에 삽입

main-A47BA5642C53A80CD56C0F06550BD162.css

Generator ?



어플리케이션에 대한 사용자의 환경 설정 지정
사용자의 모델, 뷰 등에 적합한 생성기 호출

Middleware ?


rails는 여러 미들웨어가 쌓여있는 형태를 이룸.

각 미들웨어는 각자의 목적을 가지고 
HTTP의 요청/응답을 변형/제어 함.



어떤 미들웨어가 사용되고 있는지?

-> $ rake middleware

CONFIGURING RAILS APPLICATIONS Part 2

By hanguk lee

CONFIGURING RAILS APPLICATIONS Part 2

Part 2 - Configuring Assets, Configuring Generators

  • 931