0

레일즈 3.2 (예전과 지원되지 않음, 알고 있습니다)를 사용하고 있습니다. 레거시 애플리케이션 업그레이드이며 이전에 컨트롤러 전용 파일 js/css을 가지고 있지 않았기 때문에 다른 구조를 가지고 있습니다.컨트롤러 특정 JS 및 CSS를 찾지 못하도록 레일을 막으십시오.

MyController 이상을로드 할 때 자산 파이프 라인이 MyController.js을 찾습니다. 메서드를로드 할 때 해당 뷰에 대해 특정 JS 또는 CSS를 찾습니다.

production.rb : config.assets.compile = false에이 설정이 있으므로 무언가를 컴파일하지 않으면 자산 파이프 라인으로 되돌아 가지 않습니다. 이것은 js 파일을 필요로하지 않기를 원하기 때문에 device/passwords.js isn't precompiled과 같은 오류가 발생합니다.

레일 3.2는 자동으로 이러한 컨트롤러의 specificjs가 필요합니다. 내 코드에서 알 수있는 것은 없으며 이것을 확인했습니다 : <%= javascript_include_tag params[:controller] %> 또한 내 코드에는 존재하지 않습니다.

내가 사용하지 않을 모든 작업에 대해 하나의 js 파일을 임의로 만들 필요가 없도록 해당 작업을 중단하고 싶습니다.

레일 3.2에서 가능합니까?

+0

config.application.rb 파일의 application.js 디렉토리와 config/initializers/assets (물론 레일 4 이상일 수도 있음)과 application.html.erb 레이아웃을 게시하십시오. – bkunzi01

+0

기본적으로 레일즈 3.2는 컨트롤러에 의한 자산을로드하지 않으므로 추측해야만한다면 config의 프리 컴파일 요청에 문제가있을 수 있습니다. – bkunzi01

답변

0

레일이 왜로드 되었습니까? controller#method 자바 스크립트와 CSS는 내가 제거한 행 <%= javascript_include_tag params[:controller] %> 때문에 발생하지만 레일즈 서버를 다시로드하지 못했습니다. 이는 NGINX 였고 이전 결과를 캐싱했다고 생각합니다! 그것은 나중에 그것을 고쳤다.

관련 문제