我是Ruby和ROR框架的新手。我尝试用JQuery创建Web应用程序。我的步骤是:
1.添加了gem 'jquery-rails'并从命令行执行bundle install命令
1.字符串**//= require jquery2
添加到application.js文件
1.现在我尝试将文件包含到页面中。在application.html.erb文件中添加了字符串<%= javascript_include_tag "application" %>
**
当我试图在浏览器中查看页面时,我看到错误消息:
Sprockets::Rails::Helper::AssetNotFound in LandingPage#index
The asset "application.js" is not present in the asset pipeline.
<%= javascript_include_tag "application" %>
字符串
我做错了什么?我在谷歌上搜索了这个错误,但没有找到任何好的解释。
4条答案
按热度按时间fhg3lkii1#
我还使用Application.html.erb文件中的语法JavaScript_include_tag在Rails 6(带webpack)中运行了这个错误。
使用Rails 6和Webpack用途:
字符串
f1tvaqid2#
首先尝试重新启动你的服务器,一般情况下没有必要在资产中包含
application.js
文件。如果不起作用在**
config/initializer/assets.rb
**文件中添加以下内容:字符串
**注意:**添加完资产文件后,不要忘记重启服务器。如果您在Inilalizers中做了任何更改,您必须重新启动服务器以查看效果。
k75qkfdt3#
如果您在Heroku上部署Rails应用程序时遇到了这个问题,您可能需要指定文件名。
这是一个以前是Rails 6应用的应用程序,但当我升级到Rails 7时,
application.erb
不再识别我的application.js
文件。我改了这个:
字符串
对此:
型
这解决了我的Heroku制作问题
nx7onnlm4#
上述公认的解决方案解决了大多数问题,但如果像我一样,你继续有问题后,遵循每一个指示和每一个解决方案。下面的内容可能会对你有所帮助。
在经历了一系列错误之后,我发现了以下作品。
根据我的经验,这与webpacker和你的nvm安装有关。若要尝试解决方案,请先恢复为调试该问题而执行的任何其他操作。你需要确保你运行的是最新的webpacker版本。
然后我会跑:
字符串
在你的终端。
如果它编译时没有节点警告,那么一切都很好。如果它给你一个关于你的节点版本的警告,和/或它不编译,安装最新的LTS节点版本。我的是16131关于ubuntu这很重要。node的最新版本不一定是最新的lts版本。您需要在主目录中安装。运行:
型
您可能希望将其设置为默认值,例如。:
型
还要确保应用程序布局具有:
型
一旦完成,运行webpacker,再次如上所述编译。
如果您在此之后有任何问题,您也可以尝试在config / initializer / assets.rb文件中添加以下内容:
型