web-dev-qa-db-ja.com

アセット「application.js」がアセットパイプラインに存在しません

Rubyおよび[〜#〜] ror [〜#〜]フレームワークは初めてです。 JQueryでWebアプリを作成しようとしています。私の手順は次のとおりです。

  1. Gem'jquery-Rails 'を追加し、実行しましたbundle installコマンドラインからコマンド
  2. ストリング - //= require jquery2application.jsファイルに追加
  3. 今、私はファイルをページにインクルードしようとします。そして、セクション文字列に追加しました<%= javascript_include_tag "application" %> into application.html.erbファイル

ブラウザでページを表示しようとすると、次のメッセージでエラーが表示されます。

Sprockets::Rails::Helper::AssetNotFound in LandingPage#index
The asset "application.js" is not present in the asset pipeline.
<%= javascript_include_tag "application" %>

私は何を間違っていますか?私はこのエラーについてグーグルで検索しましたが、説明の良いものは何も見つかりませんでした。

6
Alex

まず、サーバーを再起動してみてください。通常、アセットにapplication.jsファイルを含める必要はありません。それが機能しない場合は

以下をconfig / initializer / assets.rbファイルに追加します。

Rails.application.config.assets.precompile += %w(application.js)

注:アセットファイルを追加した後、サーバーを再起動することを忘れないでください。 Inilalizersで変更を行った場合、効果を確認するにはサーバーを再起動する必要があります。

6
Gagan Gami

また、application.html.erbファイルの構文javascript_include_tagを使用して、Rails 6(webpackを使用)でこのエラーが発生しました。

Rails 6およびwebpackの使用:

<%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>
3
Rudolf Fäder