2017-06-22 102 views
0

我在Rails 5.1.1应用程序中遇到这个错误,我只是在Heroku上托管ActionView :: Template :: Error(无法在/app/public/packs/manifest.json中找到sales.js。webpack仍在编译?)

2017-06-22T05:15:05.148829+00:00 app[web.1]: F, [2017-06-22T05:15:05.148717 #4] FATAL -- : [ef509b29-8637-41b3-8224-4423dbf2b2ed] 
2017-06-22T05:15:05.148948+00:00 app[web.1]: F, [2017-06-22T05:15:05.148883 #4] FATAL -- : [ef509b29-8637-41b3-8224-4423dbf2b2ed] ActionView::Template::Error (Can't find sales.js in /app/public/packs/manifest.json. Is webpack still compiling?): 
2017-06-22T05:15:05.149203+00:00 app[web.1]: F, [2017-06-22T05:15:05.149103 #4] FATAL -- : [ef509b29-8637-41b3-8224-4423dbf2b2ed]  1: %div#sale 
2017-06-22T05:15:05.149206+00:00 app[web.1]: [ef509b29-8637-41b3-8224-4423dbf2b2ed]  2: = javascript_pack_tag 'sales' 
2017-06-22T05:15:05.149297+00:00 app[web.1]: F, [2017-06-22T05:15:05.149231 #4] FATAL -- : [ef509b29-8637-41b3-8224-4423dbf2b2ed] 
2017-06-22T05:15:05.149398+00:00 app[web.1]: F, [2017-06-22T05:15:05.149328 #4] FATAL -- : [ef509b29-8637-41b3-8224-4423dbf2b2ed] app/views/sales/new.html.haml:2:in `_app_views_sales_new_html_haml___2340659139987297731_36903000' 
2017-06-22T05:15:07.004434+00:00 heroku[router]: at=info method=GET path="/favicon.ico" host=planetlauncher.herokuapp.com request_id=8bca0b65-0d4a-494f-88c7-a4b31c2ff6dc fwd="202.163.79.6" dyno=web.1 connect=1ms service=2ms status=200 bytes=143 protocol=https 

只有一种途径

Rails.application.routes.draw do 
    root 'sales#new' 
    resources :sales 
end 

我的应用程序有一个单一的视图:

# sales/new.html.haml 
%div#sale 
= javascript_pack_tag 'sales' 

视图是由一个阵营COMPON取代载入时载入app/javascript/packs/sales.jsx

该应用程序在开发过程中完美无缺,在推送前我跑rails assets:precompile,并部署到Heroku。

编辑:完整的源可here

回答

0

根据本@gauravtiwari从这个github上线:

因此,要么 - 从gitignore删除[在/public/packs线]或本地不和 预编译让heroku做到这一点,即删除公共/资产文件夹

顺便说一句,有一个问题 - webpacker:编译取决于资产:预编译所以bes t将它留给Heroku,不要在本地编译资产。

因此,遵循他的建议,我我承诺预编译的资产在本地和一切开始工作。

您可以执行我所做的或运行rm -rf /public/assets来摆脱预编译的资产。

我想你可以更进一步,将/public/assets加入你的.gitignore,以确保将来没有人意外编译资产。

我要离开这个问题,因为我从一个香草Rails应用程序这个古怪,别人必然要碰上并给予好评我的答案,因为它帮助他们;)

相关问题