私のRails JavaScriptマニフェストファイルはコンパイルされていないファイルも含めていない -- ruby-on-rails フィールド と asset-pipeline フィールド 関連 問題

My Rails Javascript manifest file neither compiles nor include any required files












8
vote

問題

日本語

私はこれと似たが解決策のないいくつかの投稿を見ました、それで私はより文書化された問題を提示するだろうと考えました。

私の問題マニフェストファイルからのJSは、JSを含まない、または編集していません。

サーバをローカルに実行してJSファイルを開くときには、標準のApplication.jsマニフェストファイルだけをコンパイルされていません。

<事前> <コード> // This is a manifest file that'll be compiled into application.js, which will include all the files // listed below. // // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts, // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path. // // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the // the compiled file. // // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD // GO AFTER THE REQUIRES BELOW. // //= require jquery //= require jquery_ujs //= require underscore //= require backbone //= require backbone_rails_sync //= require backbone_datalink //= require backbone/myapp //= require_tree .

My Development.rb:

<事前> <コード> MyApp::Application.configure do config.cache_classes = false config.whiny_nils = true config.consider_all_requests_local = true config.action_controller.perform_caching = false config.action_mailer.raise_delivery_errors = false config.active_support.deprecation = :log config.action_dispatch.best_standards_support = :builtin config.active_record.mass_assignment_sanitizer = :strict config.active_record.auto_explain_threshold_in_seconds = 0.5 config.assets.compress = false config.assets.debug = true end

My Application.RB:

<事前> <コード> require File.expand_path('../boot', __FILE__) require 'rails/all' if defined?(Bundler) Bundler.require(*Rails.groups(:assets => %w(development test))) end module MyApp class Application < Rails::Application config.encoding = "utf-8" config.filter_parameters += [:password] config.active_support.escape_html_entities_in_json = true config.active_record.whitelist_attributes = true config.assets.enabled = true config.assets.version = '1.0' end end

私のログ:

<事前> <コード> Started GET "/questions" for 127.0.0.1 at 2013-04-04 08:56:09 -0400 Processing by QuestionsController#index as HTML Completed 200 OK in 204ms (Views: 16.0ms | ActiveRecord: 17.4ms) Started GET "/assets/application.css" for 127.0.0.1 at 2013-04-04 08:56:09 -0400 Served asset /application.css - 304 Not Modified (2ms) Started GET "/assets/application.js" for 127.0.0.1 at 2013-04-04 08:56:09 -0400 Served asset /application.js - 304 Not Modified (0ms) Started GET "/assets/favicon.png" for 127.0.0.1 at 2013-04-04 08:56:09 -0400 Served asset /favicon.png - 304 Not Modified (0ms)

に注意して、このアプリはMongoDBビルドからPostgres Buildに移行されたように別のアプリからチェリーピック化されました。だから私はそれが非常に可能性があると思います、これはいくつかの uncherrypicked detail。

この問題はやることで再現できます。

  1. <コード> $ rvm use ruby-2.0.0-p0
  2. <コード> $ rails new project
  3. /assets/javascripts/
  4. alert('hey') でJavaScriptファイルを作成します。
  5. <コード> $ rails s
  6. この問題はRuby 2がまだRailsで動作しないためです。(


    私はRuby 2としてRuby 2をRails 3.2.6

    と正式に固定しています。
英語

I've seen a few posts similar to this but with no solutions, so I figured I would present a more documented problem.

My Problem JS from manifest file is not including or compiling any JS.

When running my server locally, and opening the JS file I see nothing compiled, just the standard application.js manifest file :

// This is a manifest file that'll be compiled into application.js, which will include all the files // listed below. // // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts, // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path. // // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the // the compiled file. // // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD // GO AFTER THE REQUIRES BELOW. // //= require jquery //= require jquery_ujs //= require underscore //= require backbone //= require backbone_rails_sync //= require backbone_datalink //= require backbone/myapp //= require_tree . 

My development.rb :

MyApp::Application.configure do   config.cache_classes = false     config.whiny_nils = true   config.consider_all_requests_local       = true   config.action_controller.perform_caching = false   config.action_mailer.raise_delivery_errors = false   config.active_support.deprecation = :log   config.action_dispatch.best_standards_support = :builtin   config.active_record.mass_assignment_sanitizer = :strict   config.active_record.auto_explain_threshold_in_seconds = 0.5   config.assets.compress = false   config.assets.debug = true end 

My application.rb :

require File.expand_path('../boot', __FILE__)  require 'rails/all'  if defined?(Bundler)   Bundler.require(*Rails.groups(:assets => %w(development test))) end  module MyApp   class Application < Rails::Application     config.encoding = "utf-8"     config.filter_parameters += [:password]     config.active_support.escape_html_entities_in_json = true     config.active_record.whitelist_attributes = true     config.assets.enabled = true     config.assets.version = '1.0'   end end 

My Log :

Started GET "/questions" for 127.0.0.1 at 2013-04-04 08:56:09 -0400 Processing by QuestionsController#index as HTML Completed 200 OK in 204ms (Views: 16.0ms | ActiveRecord: 17.4ms)  Started GET "/assets/application.css" for 127.0.0.1 at 2013-04-04 08:56:09 -0400 Served asset /application.css - 304 Not Modified (2ms)  Started GET "/assets/application.js" for 127.0.0.1 at 2013-04-04 08:56:09 -0400 Served asset /application.js - 304 Not Modified (0ms)  Started GET "/assets/favicon.png" for 127.0.0.1 at 2013-04-04 08:56:09 -0400 Served asset /favicon.png - 304 Not Modified (0ms) 

To note , this app was cherry picked from another app as I migrated from a MongoDB build to a Postgres build. So I think that very likely, this has something to do with some uncherrypicked detail.

This issue can be reproduced by doing ..

  1. $ rvm use ruby-2.0.0-p0
  2. $ rails new project
  3. Create a javascript file with alert('hey') in it in /assets/javascripts/
  4. $ rails s

I think this issue is because Ruby 2 does not work with Rails yet :(


I have this officially pinpointed as Ruby 2 in incompatible with Rails 3.2.6

</div
     
     
     

回答リスト

5
 
vote

Rajeshの解決策も私のために働きました。 私は2.0.0-P195とRake Assetsを使用していました:プロダクション上のプリコンパイルは実際にapplication.jsを読み取っていませんでした、そして私はファイルアプリケーションを持つ - ###。###。

だから私はRuby 1.9.3に戻り、バンドルを更新し、

で手動でキャッシュをクリアしました <事前> <コード> <% if (login) { %> <li><a href="/logout">Logout</a></li> <% } else { %> <li><a href="/login">Login</a></li> <li><a href="/register">Register</a></li> <% } %> 2

、その後

私のapplication.js、私は

を持っています <事前> <コード> <% if (login) { %> <li><a href="/logout">Logout</a></li> <% } else { %> <li><a href="/login">Login</a></li> <li><a href="/register">Register</a></li> <% } %> 3

jQuery-UIまたはJQUERY_UJS

を使用しないことに注意してください。

それから私は走った

<事前> <コード> <% if (login) { %> <li><a href="/logout">Logout</a></li> <% } else { %> <li><a href="/login">Login</a></li> <li><a href="/register">Register</a></li> <% } %> 4

今機能します。

 

Rajesh's solution did work for me too. I was using 2.0.0-p195 and rake assets:precompile on production didn't really read application.js and I ended up having the file application-###.js with the size of 1kb.

So I went back to ruby 1.9.3, updated the bundle, cleared the cache manually by

rm -rf tmp/cache/assets/* rm -rf tmp/cache/sass/* 

and then

in my application.js, I have

//= require jquery //= require bootstrap //= require_tree . 

note that I don't use jquery-ui or jquery_ujs

then I ran

rake RAILS_ENV=production RAILS_GROUP=assets assets:clean rake RAILS_ENV=production RAILS_GROUP=assets assets:precompile 

Now it works.

</div
 
 
 
 
3
 
vote

私は同じ問題を抱えていましたが、これに解決策を見つけるのに長い時間がかかりました。

ruby-1.9.3-p429 に切り替えて、問題を解決しました。 ruby 2 patches で管理する方法はわかりません。 <コード> ruby-2.0.0-p247 および<コード> ruby-2.0.0-p195 。

を使用しました。

だから、 rvm use ruby-1.9.3-p429 だけです。その後、 'Bundle Update'を実行してください。次に、コンソールの Rails.cache.clear を実行してRails Cacheをクリアし、ブラウザキャッシュをクリアすることを忘れないでください。

大丈夫なことを願っています。 :) -

 

I had the same problem, took long time to find a solutions to this.

I just switched back to ruby-1.9.3-p429, and it resolved the problem. I don't know how to manage it with ruby 2 patches. I have used ruby-2.0.0-p247 and ruby-2.0.0-p195.

So, just do rvm use ruby-1.9.3-p429. Then run 'bundle update'. Then clear the Rails cache by running Rails.cache.clear in the console and also don't forget to clear the browser cache.

Hope it goes fine. :)-

</div
 
 

関連する質問

-1  私のHeroku Assetの何が問題なのですか:編集?  ( What is wrong with my heroku assetcompilation ) 
私はメーラにイメージを挿入しようとしています、すべてがローカルで実行されていますが、Herokuはプッシングとプリコンパイルにもかかわらず、サーバー上のイメージを見ていません。以下のコード user_mailer.rb <事前> <コード> def w...

1  Sinatra Asset Pipeline Gem、空の.jsonにコンパイルする  ( Sinatra asset pipeline gem compiles to an empty json ) 
私は sinatra-asset-pipeline に働くことを試みていますSinatraの申請、私は私の資産がHerokuに展示することができます。私はMVCパターンを続けていて、現在 project-folder/assets/stylesheets/ap...

1  資産パイプラインはCSSにおけるリソースおよび相対画像経路を必要としています  ( Asset pipeline require and relative images paths in css ) 
私はCSSと画像にバンドルされたいくつかのJSライブラリを持っています。 資産/スタイルシート/ awesome-library / awesome-library.css のようなものが見えます <事前> <コード> background-image: ur...

1  プリコンパイル済み資産と非コンパイル済み資産  ( Precompiled assets and non compiled assets ) 
Railsアプリケーションの内側にあるアセットと一緒にプリコンパイルされていないアセットを使用できますか? 私はWebインターフェースを介してアップロードされた別々のCSSファイルを持っていて、私の資産をプリコンパイルしたくない場合は、プロセスのマニュアルや...

49  レール3.1ベンダー/アセット/イメージからの画像を提供  ( Rails 3 1 serving images from vendor assets images ) 
私は私のRails 3.1アプリのベンダー/アセット/イメージに外部画像(jQuery Pluginで使用されています)を置こうとしています。問題は、次のようなものを試すときです。 <事前> <コード> <%= image_tag "ui-bg_flat_75...

0  Railの資産パイプラインのCoffeeScriptとRubyとの懸念を分離する良い方法は何ですか?  ( What is a good way to separate concerns with coffeescript and ruby on rails ass ) 
TLDR: 複数のCoffeeScriptファイルを1つのJSファイルに組み合わせるために何をして、すべて同じ匿名関数ブロックの下にありますか? ロングバージョン: ROR Webアプリの一部にロードされる数CSファイルを持っています。私は疑問に思います:...

0  custom.css.erbのRailsインスタンス変数(@theme)にアクセスする方法  ( How to access rails instance variabletheme in custom css erb ) 
私はテーマモデルを持っていて、私は3フィールドを持っています 1)ナビバー 2)ヘッダー 3)を含む custom.css.erbからインスタンス変数(@theme)にアクセスしたいので、Paramsにアクセスできます。 controller.rb ...

11  アセットパイプラインレール3.1廃サイクルは?  ( Does the asset pipeline rails 3 1 waste cycles ) 
Rails 3.1では、.coffeeと// =ファイルが必要なファイルを1回または各アセットで処理する必要があります。 リクエスト? たとえば、ファイルがあります <コード> //= require source/main.js.coffee //=...

0  レール資産パイプライン製造プリコンパイル  ( Rails asset pipeline production precompile ) 
ディレクトリ projName/vendor/assets/bootstrap/css/ 私は製造モードにあります。 Config.Assets.precompile <コード> << /(^[^_/]|/[^_])[^/]*$/ Rake Assetsを...

0  Rails 3のビューの継承は、子ビュー内で「スーパー」を呼び出すことが可能ですが、親変数を送信しますか?  ( With rails 3 view inheritance is it possible to call super within a child vie ) 
私のアプリの show アクションは、モデルごとに同じテンプレートを持っています(管理者ポータルタイプのインタフェースです)。これらのモデルのすべてが継承するビュー<コード> 99887761 があります。 コントローラすべてinheritedResourc...




© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有