2013-06-06 3 views
6

jQuery Mobileでレール4アプリを開発していて、jquery_mobile_rails gemを使用しています。つまり、jQueryファイルをインストールする必要はありません。私の問題は、ボタンのアイコンがないことです。これらは開発段階には表示されますが、実際には表示されません。私はコンパイルする必要があると仮定しますが、それらはどこにありますか、どのようにすればいいですか?Rails 4アプリで、jQuery Mobileのボタンアイコンをコンパイルするにはどうすればいいですか?

私はjQuery Mobileファイルを直接使用していないため、アイコンをその下に保存するオプションはありません。宝石は開発モードでは動作しますが、実動モードでは動作しません。その宝石にボタンアイコンが内部的に含まれていると仮定できますか?もしそうなら、私は彼らが生産モードで動作しない理由を理解することを忘れています。

jquery-rails (2.3.0) 
jquery_mobile_rails (1.3.0) 
+0

あなたはjQM CSSファイルが置かれている 'images'フォルダの下にアイコンを配置する必要があります。 – Omar

+0

JQMファイルはありません。私はgemを使用しています。 – markhorrocks

+0

application.cssマニフェストに以下を追加しましたか? * = require_self * = require_tree。 * = jquery.mobileが必要です。 –

答えて

2

環境ごとにアセットをプリコンパイルすると、known issue currently with Rails 4が存在します。

は設定してみてください:config/application.rb

config.assets.precompile=true 

それはまだconfig/application.rbに以下を追加してみてください、動作しない場合:

config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif) 

私はconfig.assets.precompileにこれらのファイルを連結するときに取得奇妙なエラーを複製することはできません。代わりにtry the answer to this question(上記の行を置き換え)することができます:

config.assets.precompile << Proc.new { |path| 
    if path =~ /\.(css|js|png|jpg|jpeg|gif)\z/ 
    full_path = Rails.application.assets.resolve(path).to_path 
    app_assets_path = Rails.root.join('app', 'assets').to_path 
    vendor_assets_path = Rails.root.join('vendor', 'assets').to_path 

    if ((full_path.starts_with? app_assets_path) || (full_path.starts_with? vendor_assets_path)) && (!path.starts_with? '_') 
     puts "\t" + full_path.slice(Rails.root.to_path.size..-1) 
     true 
    else 
     false 
    end 
    else 
    false 
    end 
} 
+0

production.rbを意味しますか?いずれかまたは両方の場合には? – markhorrocks

+0

いいえ、バグはproduction.rbへのこれらの変更が機能しないことを意味します。したがって、それらを 'config/application.rb'に入れなければなりません。この問題が解決されるまで。 – mccannf

+0

この2行のapplication.rbは、 'を生成します。trueの場合、未定義のメソッド '+'です。TrueClass(NoMethodError)最初の行はOkですが、実動環境ではまだテストされていません。 – markhorrocks

関連する問題