2014-03-31 2 views
0

를 사용하여 자바 스크립트 파일을로드하지,이 같은 내보기에 CSS를로드했습니다.레일 응용 프로그램 내 레일 응용 프로그램에서 자산

하지만 나는 자바 스크립트를 아래와 같이 파일을로드하려고,

<script src="assets/javascripts/libs/modernizr-2.6.2.min.js" type="text/javascript"></script> 

내가 내 모든 파일

을 (일부 이미지 같은 오류)를 404 error를 얻고은 바로 이곳에있다 , 그래서 누구든지 그것을 해결할 생각이 있습니까?

감사합니다.

답변

1

당신은 더 나은 귀하의 응용 프로그램에 JS 및 CSS 파일을 포함 asset pipeline를 사용해야합니다. 귀하의 응용 프로그램/자산/자바 스크립트에 넣어 현재의 예를 들어

은/

/* 
*= require ./myStyleSheet 
*/ 

그리고로 응용 프로그램/자산/스타일/application.css.scss에서

//= require ./libs/modernizr-2.6.2 

를 application.js 당신의 .html.erb 파일 (예 : application.html.erb, <head> 섹션)

<%= stylesheet_link_tag "application" %> 
<%= javascript_include_tag "application" %> 
+0

감사합니다. 도움이 많이되었습니다! 하지만 한 가지 더 : js에 대해 빈 페이지가 표시됩니다. 이미지 용으로 어떻게 할 수 있습니까? – F4Ke

+0

이미지의 경우 app/assets/images에 입력 한 다음 <% = image_tag 'my_image.jpg'%> – buru

+0

네, 맞습니다. 감사합니다. – F4Ke

0

src의 시작 부분에 에셋 앞에 슬래시 '/'를 붙입니다. 또한 CSS 파일은 src가 아닌 href 링크와 함께 포함되어야합니다. 그러나 작동은 좋지만 좋은 습관은 아닙니다.

<link href="/assets/css_file_path.css" media="screen" rel="stylesheet" /> 
<script src="/assets/path_to_js_file.js"></script> 
0

추가하십시오 아래 파일의 자산 파이프 라인에 사용자 정의 경로 : pre-compilation을 할 때

# config/application.rb 
config.assets.paths << Rails.root.join("app", "assets", "javascripts", "libs") 

그런 다음, 자바 스크립트 매니페스트 파일 (주로 application.js)를 가져하기 위해서 JS 파일이 필요합니다

//= require modernizr-2.6.2.min 
(대부분 application.css.sass) 당신의 CSS 매니페스트 파일에서

이, 아래 줄을 추가 :

/* 
*= require myStyleSheet 
*/ 

이 포함 자바 스크립트 파일을 개인 외부가있는 경우를, 당신은 추가 할 수 있습니다 당신은 자산 경로를 통해로드 된 자산을보고 싶다면

config.assets.precompile += ['custom.min.js'] 

, 콘솔이를 사용할 수 있습니다 : config/application.rb에서 프리 D 배열로하는 것은

Rails.application.config.assets.paths 

희망이 최선의 선택이 될 수 사용. :)

관련 문제