에 대한 자산을 내가 때 다음과 같은 오류어떤 방법 오류가없고, 미리 컴파일 내 개발 모드에서 생산
을 얻고있다rake bundle exec rake assets:precompile RAILS_ENV=production --trace
명령을 사용하여 응용 프로그램의 자산을 사전 컴파일 할 때 전무 클래스에 정의되지 않은 []
NoMethodError: undefined method '[]' for nil:NilClass
/home/sable/.rvm/gems/ruby-2.3.0/gems/sprockets-3.6.3/lib/sprockets/sass_processor.rb:278:in `sprockets_context'
/home/sable/.rvm/gems/ruby-2.3.0/gems/sprockets-3.6.3/lib/sprockets/sass_processor.rb:124:in `asset_path'
/home/sable/.rvm/gems/ruby-2.3.0/gems/sprockets-3.6.3/lib/sprockets/sass_processor.rb:137:in `asset_url'
/home/sable/.rvm/gems/ruby-2.3.0/gems/sprockets-3.6.3/lib/sprockets/sass_processor.rb:155:in `image_url'
/home/sable/.rvm/gems/ruby-2.3.0/gems/sass-3.4.22/lib/sass/script/tree/funcall.rb:143:in `_perform'
나는 레일의 명령을 내가
,691 따라하는 사전 컴파일 오류의 원인 일 수 있습니다 생각 오류가 발생하여 개발 모드에서 내 서버를 실행하는 경우 363,210ActionController::RoutingError (No route matches [GET] "/javascripts/defaults.js"):
나는 레일 자산 파이프 라인 및 별표를 통해 읽을 수 있지만 내가 레일 프레임 워크에 새로운 오전으로 난, 어떤 방향 또는 도움을 주시면 감사하겠습니다 모든 주위에 내 머리를 정리하고 문제를 해결할 수없는 것. 내가 라인 (120)에서, 파일
같은/home/sable/.rvm/gems/ruby-2.3.0/gems/sprockets-3.6.3/lib/sprockets/sass_processor.rb
을 편집 한
솔루션, 나는 경로를 볼 수있는 라인 (122)에 선 '풋'경로 ' "이렇게 추가 된 경우 사전 컴파일 오류가 난 후 파일을 저장하고
def asset_path(path, options = {})
path = path.value
puts path........
에서 오는 다시
rake bundle exec rake assets:precompile RAILS_ENV=production --trace
를 실행한다3210 나는 css 파일에서 sasss 도우미 메서드 'image-url'을 사용하고있는 것을 보았습니다. 그래서 사전 컴파일러는 어쨌든 그 파일에 접근 할 수 없었습니다. 확장 파일 css.scss로 새 파일을 만들었습니다.이게 내 문제를 해결했습니다. 나는 그것을 완전히 이해하지 못하고 사람들의 경험, 체크 아웃, http://guides.rubyonrails.org/asset_pipeline.html#css-and-sass 및 How to reference images in CSS within Rails 4에서 따를 수 있기 때문에 더 잘 설명 할 수 없습니다.
, 감사 브로 사전 컴파일 --trace! – Teebo