2012-01-26 4 views
5

Rails 3.1 앱에서 CKEditor를 사용하려고합니다. Ckeditor 디렉토리가 app/assets/javascripts/ckeditor /에 있으며 압축되지 않은 소스와 모듈화 된 소스가 제거 된 관계없는 것들이 있습니다.Ckseditor 리소스를 컴파일하여 Rails 3.1 자산 파이프 라인에로드하는 방법

개발시 잘 작동합니다. 프로덕션 환경이나 스테이징 환경에서 ckeditor는 config.js, lang/en.js skins/kama/editor.css 파일을 찾을 수 없습니다. 이 파일들은 미리 컴파일되지 않았 음을 알 수 있습니다. 자산 파이프 라인은 기본적으로 /.css/ 또는 /.js/와 일치하는 것을 포함하거나 사전 컴파일하지 않기 때문에 의미가 있습니다.

레일즈 문서 및 previous answers like this one에 따르면 config.assets.precompile에 필요한 파일을 추가하는 것이 해결책이라고 생각합니다. 그러나 광범위한 노력에도 불구하고 config.assets.precompile에서 어떤 형식으로 사용해야하는지 알 수 없습니다. 문서화되지 않았으며 예제도 제시되지 않았습니다. 내가 추가 정규 표현식에 시도했습니다

config.assets.precompile << ['config.js', 'en.js', 'editor.css'] 

파일과 일치합니다 : 내가 해봤

config.assets.precompile << [ /.*config\.js/, /.*en.js/, /.*editor.css/ ] 

을 내가 명시 적으로 이름으로 파일을 추가 해봤

명시 적으로 전체 경로 추가 :

config.assets.precompile << File.join(Rails.root, 'app', 'assets', 'javascripts', 'ckeditor', 'config.js') 
(etc...) 

레이크 에셋을 실행하는 이러한 모든 경우 (즉, 시도한 모든 것) : 프리 컴파일은 여전히 ​​필요한 파일을 공개/자산으로 이동하지 못합니다. 모든 이미지와 그런 이동하지만 CKEditor 실행해야하는 세 가지 자바 스크립트 및/또는 CSS 파일이 아닙니다.

의견이 있으십니까?

+0

당신이 config.assets.precompile을 추가하는이 답변에서 파일 lib/tasks/precompile_hook.rake 및 붙여 넣기를 만들기 application.js //= require ckeditor/init

  • 에서 config.assets.precompile += ['ckeditor/*']
  • 을 application.rb하는? –

  • 답변

    1

    코드에 구문 오류가 있습니다. 프리 D 파일 속성은 h 열입니다.

    당신은 이런 식으로 배열에 단일 항목을 추가 할 수 있습니다 :

    config.assets.precompile << 'name_of_file.ext' 
    

    을 당신의 가치가 배열에있는 경우에 당신은 배열을 추가해야합니다.

    config.assets.precompile += [ /.*config\.js/, /.*en.js/, /.*editor.css/ ] 
    

    추가 할 경우 미리 컴파일 된 배열 안에 중첩 된 배열이 있으므로 무시됩니다.

    2

    비슷한 문제가 발생했습니다. 자산 파이프 라인없이 CKEditor를 사용하여 종료했습니다. :)

    몇 개의 보석을 시도한 후에도 프로덕션 환경에서 아무 작업도하지 않았습니다. 나는 앱의 public 폴더에 ckeditor를 넣는 것을 끝내었다. 이는 자산 파이프 라인 프로세스를 완전히 건너 뜁니다. ckeditor는 프로덕션 환경에서도 올바르게 작동합니다. 그래도 자산 사전 컴파일은 없습니다 ...

    레일 3.1, CKEditor 4.1을 사용합니다. 이 오래된 스레드이지만, 어쩌면이 ... 누군가

    업데이트를 도울 수 : 또한, 당신은 당신의 현지 생산 환경에서 테스트하는 경우에 대해서는 config/environments/production.rb

    2

    true로 serve_static_assets을 설정하는 것을 잊지 마세요 나) 그것은 기본 프리 컴파일 작업 (레일 4와 CkEditor 4 사용)을 오버라이드하여 수정되었다.

    1. 추가 Precompile hook
    +1

    레이크 파일 이름은 "lib/tasks/precompile_hook.rake"여야합니다. –

    +1

    이것은 작동합니다. 그러나 툴바에 이미지가 표시되지 않습니다. icons.png처럼 보이고 다른 아이콘 이미지 파일이 없습니다. 이견있는 사람? 감사. –

    +0

    몇 가지 추가 정보를 제공해 주시겠습니까? 레일 및 ckeditor의 버전. 이 이미지가 사전 컴파일 되었습니까? –

    관련 문제