2012-02-09 83 views
2

我對ckeditor「3.7.0.rc2」gem有個大問題。heroku上的Rails 3.1 ckeditor

在開發過程中,它與s3後端的上傳效果很好。

但在heroku上它不起作用。

問題是,ckeditor/vendor/skins /(kama)或(office2003)或(v2)/editor.css文件中包含一個使sass編譯器尖叫的錯誤。像這樣的錯誤「過濾:;」,因爲沒有價值它不起作用。

在本地更改文件沒有意義,因爲heroku會在我部署時下載該gem。

我試圖在本地打包gem,並製作我自己的git fork並安裝它。但是,隨後

RAILS_ENV=production bundle exec rake assets:precompile 

命令預編譯的CKEditor的文件夾中的所有文件,並始終處於

rake aborted! Permission denied 

當我安裝了「3.7.0.rc2」寶石預編譯結束,一些CKEditor的JS文件預編譯但不是全部。

我該如何解決這個問題?

回答

0

解決的辦法是分叉git repo,刪除所有不需要的並糾正錯誤。 js文件。然後預編譯工作,現在該應用程序在heroku上運行。

這裏是我的叉子https://github.com/andreaslyngstad/ckeditor

它的工作在我的項目的鏈接,但我已經刪除了,我沒有使用,所以如果你使用其中的一些js文件,這是不適合你。

+0

你能和我們一起分享這個修復叉嗎? – soulnafein 2012-02-21 14:21:14

+0

添加鏈接,附帶評論 – 2012-02-21 19:30:58

1

當你分叉ckeditor gem並在Gemfile中使用分叉的git路徑時,heroku會從分叉的git repo中取出ckeditor的源,而不是gem。這應該解決這個問題。

你可以嘗試的其他事情是預編譯你的開發機器中的資產並將資產推送到heroku。這將確保heroku不會預編譯這些資產。更多信息請見http://devcenter.heroku.com/articles/rails31_heroku_cedar。這將只在雪松堆棧上運行

+0

感謝您的回答。我在本地機器上進行預編譯,並從分叉的git路徑中拉出。問題是,當我這樣做時,編譯它就會出現問題。我在雪松堆棧 – 2012-02-09 23:20:08

+0

你檢查了這個線程嗎? https://github.com/galetahub/ckeditor/issues/43 – 2012-02-09 23:28:32

+0

再次感謝。是的,我已閱讀第43期。如果我可以控制heroku中的寶石,我可以更改寶石中的文件。我知道什麼是錯,但不知道如何解決。 – 2012-02-10 07:57:44