2011-08-31 4 views
9

을 미리 컴파일 된 파일을 사용하지 않습니다레일 3.1.X - IMAGE_TAG 내가 넣어 생산 모드에서 내보기에

app/assets/images/coin.png 

그러나 생산 모드 :

<%= image_tag("coin.png") %> 

내 원래 이미지에 넣어 IMAGE_TAG에 의해 생성 된 HTML 코드는 다음과 같습니다

<img alt="Coin" src="/assets/coin.png"> 

대신 타격 미리 컴파일 된 자산 :

coin-aba0e66819d64251cb3bb4bb29b26eb2.png 

(자연스럽게 나는 이미지를 볼 수 없음).

자산을 사전 컴파일하는 것을 잊지 않았습니다.

내 환경/production.rb은 다음과 같습니다

config.cache_classes = true                                             
    config.consider_all_requests_local  = false 
    config.action_controller.perform_caching = true                                        
    config.serve_static_assets = false                                                    
    config.assets.compress = true                                                 
    config.assets.js_compressor = :uglifier 
    config.action_dispatch.x_sendfile_header = "X-Accel-Redirect" 

감사합니다 당신에게 많은

답변

11

찾았습니다 !!!!!!!

config.assets.digest = true 
+3

당신이 흔들립니다. 나는 rc.5가 새로운 옵션없이 작동하는 곳에 설치했다. – nasmorn

+0

감사합니다. 또한 sass 파일에서 같은 문제를 해결하기 위해 "<% = asset_path ('foo.png') %>"를 "image-url ('foo.png')"로 대체해야했습니다. – Thilo

+0

정말 고마워요. 이 앱은 2.x에서 4.x로 시간이 지남에 따라 업그레이드되었습니다. 헤더가없는 이전의 해시 자산 인'header.jpg'을로드하고'header-asdlfk12l3k4.jpg'를 무시하고 있음을 알 수 있습니다. 이 옵션은 누락되었습니다. – kimos

0

더 이상 만료 ?hash 캐시를 사용하지 않습니다 this railscasts 레일 3.1의 최신 부분에 명시된 바와 같이. 저작물의 파일 이름 자체에 해시를 사용합니다. 이미지가 동일한 지 (아직 3.1로 재생하지 못했는지) 모르겠지만 문제 일 수 있습니다.

+0

예 정확히 내가 잘못했다,하지만 같은 문제 :

은 production.rb에 추가합니다. 어쨌든 고마워. – Unitech