jQueryMobileを含むRails3アプリをデプロイしようとしています。開発では問題なく動作し、本番環境ではJSとCSSをプリコンパイルする必要があることを理解しています。次のエラーが発生します。
Started GET "/orders/mobile" for 127.0.0.1 at Wed Jun 06 14:22:40 -0400 2012
Processing by OrdersController#mobile as HTML
Rendered orders/mobile.html.erb within layouts/mobile (642.9ms)
Completed 500 Internal Server Error in 1122ms
ActionView::Template::Error (jquery.mobile isn't precompiled):
5: <head>
6: <meta http-equiv="content-type" content="text/html;charset=UTF-8" />
7: <title>Company Orders</title>
8: <%= stylesheet_link_tag 'jquery.mobile' %>
9: <%= stylesheet_link_tag 'jquery.mobile.structure' %>
10: <%= stylesheet_link_tag 'jquery.mobile.theme' %>
11: <%= stylesheet_link_tag 'http://fonts.googleapis.com/css?family=Ubuntu' %>
app/views/layouts/mobile.html.erb:8:in `_app_views_layouts_mobile_html_erb__605278794_69818059003840'
app/controllers/orders_controller.rb:330:in `mobile'
app/controllers/orders_controller.rb:329:in `mobile'
私はいつものことを読みましたが、ここには多くの間違いがあり、どこから始めればよいのかほとんどわかりません。
- アプリ/アセットにJQMのものがありましたが、その後ベンダー/アセットに移動しました。それらはプリコンパイラーによって認識されます-さまざまな試行でそれらについて文句を言うので私は知っています-しかしそれらは(どちらの場所でも)プリコンパイルされることは決してないようです。
- 私は
*= require_tree ../../../vendor/assets/stylesheets
application.cssで試しました。すべてのページヒットに含めたくないので、レイアウトに含めたいのですが、どういうわけかプリコンパイルしようとしています。 - 私は
*= require jquery.mobile[[.css].erb]
application.cssで試しました。 config.assets.precompile += %w( [[./]vendor/assets/stylesheets/]jquery.mobile.* )
config / environment/production.rbで試しました。
最後の努力として、jquery.mobile.css.erbから「.erb」を削除し、<% asset_data_uri %>
タグを削除してコンパイルされるかどうかを確認しました。rake assets:precompile
コマンドを渡しますが、それでも同じエラーが発生します。
JQMのプリコンパイルをオフにしたくありません。動作させたい。(私は本当にこのページをスピードアップする必要があります。)しかし、JQMをRails 3アプリ(プリコンパイル付き)にエレガントに挿入する方法についてのガイドが見つかりません。試行錯誤で考えられるすべての手段を使い果たしました。とエラー。確かに誰かがこれを行い、それを実行する正しい方法を知っています。