2013-10-01 68 views
0

我使用nginx的服務器和乘客運行我的應用程序,::的ActionView ::模板錯誤(ui.jqgrid不預編譯)Rails的

ActionView::Template::Error (ui.jqgrid isn't precompiled): 
    21:   <%= stylesheet_link_tag "new" %> 
    22:   <%= stylesheet_link_tag "jquery-ui-1.8.16.custom.css" %> 
    23:   <%= stylesheet_link_tag "buttons"%> 
    24:   <%= stylesheet_link_tag "ui.jqgrid"%> 
    25:   <%= stylesheet_link_tag "jquery.multiselect.css"%> 
    26:   <%= stylesheet_link_tag "jquery.multiselect.filter.css"%> 

我已經預編譯我的所有assets.I有包括按照我的application.rb中文件

config.assets.precompile << Proc.new do |path| 
    if path =~ /\.(css|js)\z/ 
     full_path = Rails.application.assets.resolve(path).to_path 
     app_assets_path = Rails.root.join('app', 'assets').to_path 
     if full_path.starts_with? app_assets_path 
      puts "including asset: " + full_path 
      true 
     else 
      puts "excluding asset: " + full_path 
      false 
     end 
    else 
     false 
    end 
    end 

public/assets可以看到它的編譯版本的代碼,但我依然獲得該文件未預編譯的消息。

public/assests/ui.jqgrid-4a84577046aa358c9ee125bf6a1a85de.css 
public/assests/ui.jqgrid-4a84577046aa358c9ee125bf6a1a85de.css.gz 
public/assests/ui.jqgrid.css 
public/assests/ui.jqgrid.css.gz 

更新: 我manifest.yml

ui.jqgrid.css: ui.jqgrid-4a84577046aa358c9ee125bf6a1a85de.css 
ui.multiselect.css: ui.multiselect-18d6d97e6b62659bfd94b81d54ed7ec0.css 

在我的本地機器的工作很好,但是當我部署我的生產服務器(nginx的+乘客)在其崩潰的代碼。

請建議...

+0

您是否重新啓動了服務器? – techvineet

+0

是的,我已經重新啓動了我的服務器 – Ashwini

+0

爲什麼在'public/assets'文件夾中有這些文件'ui.jqgrid.css'&'ui.jqgrid.css.gz'。在你的情況下,我會嘗試看看'manifest.yml'包含的內容。 –

回答

1

當你包括CSS或JS文件,如果文件名中包含點則假設其文件擴展名,這是假設jqgrid爲文件擴展名,

因此,只要改變<%= stylesheet_link_tag "ui.jqgrid"%>

<%= stylesheet_link_tag "ui.jqgrid.css"%> 

和它的作品!

相關問題