9

Macbook Proを使用していて、新しいRails 3.2アプリを作成しましたが、アセットパイプラインが機能しません。これが私がしたことです:

$ rails version
  Rails 3.2.5
$ rails new test_assets
$ cd test_assets
$ rails server

サーバーは正常に起動していますが、にアクセスhttp://0.0.0.0:3000/assets/application.jsすると、マニフェストファイルがまったく処理されていないことがわかり、次のように表示されます。

//... some comments ...
//= require jquery
//= require jquery_ujs
//= require_tree .
;

私は他のMacbookProでもまったく同じ手順を実行しようとしました。それはうまくいきます。そのマシンhttp://0.0.0.0:3000/assets/application.jsにアクセスすると、すべての内容を含むコンパイル済みのjavascriptファイルが表示されます。

http://railscasts.com/episodes/279-understanding-the-asset-pipelinehttp://guides.rubyonrails.org/asset_pipeline.htmlを読み、Webで何時間も検索しましたが、手がかりはありませんでした。

あなたの助けは本当にありがたいです!

4

7 に答える 7

3

提案:node.jsをインストールするかgem 'therubyracer', :platforms => :ruby、Gemfileのコメントを解除してください

同じ手順を実行しましたが、ログファイルは次のようになります...サーバーを起動して/assets/application.jsをリクエストすると、どのようになりますか?ご覧のとおり、私は3.2.6を使用しており、application.jsをコンパイルしました。

=> Booting WEBrick
=> Rails 3.2.6 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2012-07-19 22:50:02] INFO  WEBrick 1.3.1
[2012-07-19 22:50:02] INFO  ruby 1.9.3 (2012-02-16) [x86_64-darwin11.3.0]
[2012-07-19 22:50:02] INFO  WEBrick::HTTPServer#start: pid=21393 port=3000


Started GET "/assets/rails.png" for 127.0.0.1 at 2012-07-19 22:50:13 -0500
Connecting to database specified by database.yml
Served asset /rails.png - 200 OK (9ms)


Started GET "/assets/application.js" for 127.0.0.1 at 2012-07-19 22:50:23 -0500
Compiled jquery.js  (2ms)  (pid 21393)
Compiled jquery_ujs.js  (0ms)  (pid 21393)
Compiled application.js  (26ms)  (pid 21393)
Served asset /application.js - 200 OK (74ms)
[2012-07-19 22:50:24] WARN  Could not determine content-length of response body. Set content-length of the response or set Response#chunked = true
于 2012-07-20T03:54:43.310 に答える
3

私も同じ問題を抱えていました!

Rubyを2.0.0から1.9.3にダウングレードすると、問題が修正されました

于 2013-06-28T22:32:24.677 に答える
0

まったく同じケースに直面しました。

私はv2.0.0rcなどのルビーを使用していることがわかりました。1.9.3p194(両方ともRbenvの下にあります)にダウングレードすると、すべてが完全に機能します。

のようにビューでヘルパーを使用できますが<%= javascript_include_tag "jquery", "jquery_ujs" %>、ruby2.0.0でも役立ちました。

于 2013-04-18T08:36:09.553 に答える
0

今日同じ問題が発生し、application.jsがコンパイルされないという問題を解決するために、Rubyを2.0から1.9.3にダウングレードする準備ができました。この問題は、Ruby 2.0(およびRails 3.2.8)がインストールされている本番サーバーで発生しました。開発マシン(Ruby1.9.3およびRails3.2.8)では、application.jsは問題なくコンパイルされました。

最後に、本番サーバーをRails3.2.8から3.2.14にアップグレードしました。Gemfile.lockを削除し、バンドルインストールを実行しました。次に、アセットを再コンパイルし、voilaapplication.jsがアセットをコンパイルしました。

私はこれをStackoverflowオーディエンスと共有することを考えました、多分これは他の誰かの問題を解決するでしょう。

于 2013-11-14T06:38:14.573 に答える
0

Ruby2.0で最初に公式にサポートされたバージョンのrails3.2は3.2.13です。したがって、railsバージョンをrails3.2.13にアップグレードすると問題が解決します。

アップグレードの手順:

1)Gemfileのrailsバージョンをgem'rails'、'3.2.22'に変更します。

2)バンドル更新レール

于 2017-03-08T12:22:48.233 に答える
-1

開発時には、アセットはプリコンパイルされません。それらを見たい場合は、を実行する必要がありますbundle exec rake assets:precompile

于 2012-07-20T01:41:16.967 に答える
-3

enviornment / development.rbを開き、config.assets.debug=falseを設定します。それでおしまい

于 2013-01-28T14:25:58.567 に答える