0
我有一個愚蠢的問題:我有一個JavaScript文件,它具有一些JavaScript常量(用於所有JavaScript代碼),這些常量是從rails中「提取」的。預編譯js.erb文件或在沒有預編譯的情況下加載
代碼很簡單:
var CrossJavascriptSettings = {
desktop_columns: <%= Rails.configuration.extjs_desktop[:icon_columns] %>,
recaptcha_public_key: '<%= Recaptcha.configuration.public_key %>',
tasks_icon_image: '<%= image_path('icons/Clock.png') %>',
no_image: '<%= image_path('icons/Delete.png') %>',
loading_image: '<%= image_path('ext-icons/loading.gif') %>',
loading_image_preloaded: new Image().src = '<%= image_path('ext-icons/loading.gif') %>',
no_image_preloaded: new Image().src = '<%= image_path('icons/Delete.png') %>',
tasks_icon_image_preloaded: new Image().src = '<%= image_path('icons/Clock.png') %>',
available_roles: <%= Rails.configuration.available_roles.each_with_index.collect { |element, index| [index, element] }.as_json %>,
organizations_logo_path: '/assets/organizations/logos/'
};
的問題是,我的文件不會被預編譯,這是很奇怪的,因爲裏面的文件,我使用的東西,只是配置選項,無數據庫或類似的。
所以我的問題是,我該如何解決這個問題?有沒有辦法強制編譯該文件與所需的常量,或有任何方式來加載它沒有被編譯?
運行'rake assets:precompile'預編譯我的js.erb到應用程序-... js –
您使用rails 4嗎?這可能是不同之處。 –