Heroku - CSS不在单个页面上加载,而是在其他任何地方加载

时间:2015-08-02 01:30:38

标签: html css ruby-on-rails ruby heroku

提前抱歉,我知道有关于这个主题的主题,但这很让人抓狂!如果这个问题不仅限于索引,我也不会感到沮丧。 CSS在我的应用的页面上加载了所有内容,除了帖子/索引页面。我应该注意到它完全在当地运行,而且自从今天早上起我就一直在反对这一点,所以我可能会忽略一些平庸的事情,并提前道歉。

宝石文件

gem 'rails_12factor', group: :production
gem 'pg', group: :production

Production.rb

config.cache_classes = true
config.serve_static_assets = true
config.assets.compile = true
config.assets.digest = true

运行以下内容失败:

RAILS_ENV=production bundle exec rake assets:precompile
bundle exec rake assets:precompile

指定production.rb中要预编译的资产不成功

config.assets.precompile += %w( public.css public.js )   
config.assets.precompile += %w( assets/stylesheets )

还尝试将扩展程序从.css更改为.scss并添加新的custom.scss并链接到该#app-layout-body { height: auto; margin: 0 auto; padding: 25px; position: relative; border: 5px solid red; text-align: center; } #div-register { border: 5px solid green; padding: 10px; background: red; color: white; }但未成功。

链接到我的应用和相关网页: https://clickbait22.herokuapp.com/

链接到其Github存储库: https://github.com/4thking/clickbait

1 个答案:

答案 0 :(得分:1)

尝试跑步......

heroku run bundle exec rake assets:precompile
heroku open

在生产中,您必须运行rake资产:预编译以提供app / assets文件夹中的任何内容。在开发模式下,Rails会不断检查文件的更新,并分别为每个文件提供服务。

当你开发时很好,但生产速度很慢。因此,为了加快速度,Rails让您运行一个更长的任务,缩小并组合app / assets中的一堆文件,加快页面加载时间并减少服务器负载。

希望这会帮助你!

更新:

虽然您说过您尝试过以下操作,但我希望无论如何都要将其包括在内。通常,在推送到Heroku之前预先编译资产很重要。在终端内部,这个过程看起来与此类似......

rake assets:precompile
git commit -m 'Assets precompiled'
git push heroku master