【问题标题】:Heroku - CSS not loading on a single page but everywhere elseHeroku - CSS 不在单个页面上加载,而是在其他任何地方加载
【发布时间】:2015-08-02 01:30:37
【问题描述】:

抱歉,我知道有关于这个主题的话题,但这太让人抓狂了!如果这个问题不仅限于索引,我就不会感到沮丧。 CSS 在我的应用程序的所有页面上都可以正常加载除了帖子/索引页面。我应该注意到它在本地运行得很好,从今天早上开始我就一直在反对它,所以我可能忽略了一些平庸的东西并提前道歉。

宝石文件

gem 'rails_12factor', group: :production
gem 'pg', group: :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 并链接到它但没有成功。

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

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

【问题讨论】:

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


    【解决方案1】:

    尝试运行...

    heroku run bundle exec rake assets:precompile
    heroku open
    

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

    在开发时它很好,但在生产中却很慢。因此,为了加快速度,Rails 让您运行一个较长的任务,该任务会缩小并合并应用程序/资产中的一堆文件,从而加快页面加载时间并减少服务器负载。

    希望对你有所帮助!

    更新:

    虽然您说您已尝试执行以下操作,但为了清楚起见,我还是想将其包括在内。很多时候,在推送到 Heroku 之前预编译资产很重要。在终端内部,这个过程看起来类似于......

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

    【讨论】:

    • 嗨蒂姆。感谢您的快速回复!我尝试了您的建议,不幸的是,它并没有解决我的问题。感谢您的帮助:)
    • 真可惜 Ryan :( 值得一试,我现在看看你的 Github 仓库,看看能不能发现什么。
    • 谢谢蒂姆。我整天都在移动样式表,所以我提前为我造成的混乱道歉。
    • 对,所以我已经克隆了你的项目,尽管你说它在本地运行良好,但恐怕它不适合我。问题似乎在 posts/index.html.erb 文件中。再次检查您的 div 展示位置类名称。我认为这不是部署问题,而是样式问题
    • 嗨蒂姆。非常感谢您的帮助,考虑到正在发生的事情,这实际上很有意义,我会修补一下,看看是否可以在本地复制它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-20
    • 1970-01-01
    • 1970-01-01
    • 2020-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多