我正在使用这个tutorial而我正在谈论要运行的部分
bundle exec rake assets:precompile
如果您查看网站,可以看到她显示此命令的输出以及它应该是什么样子。但是,我没有得到那样的答复。我像往常一样得到正常的编译文件(需要提交和推送)。
new file: public/assets/bootstrap.min-b90c459188f886cf6a00921016ed2104.css
new file: public/assets/bootstrap.min-b90c459188f886cf6a00921016ed2104.css.gz
new file: public/assets/bootstrap_and_overrides-e3193dde7df14df59d8c755dbe743f58.css
new file: public/assets/bootstrap_and_overrides-e3193dde7df14df59d8c755dbe743f58.css.gz
我在S3检查我的水桶,那里也没有。我已经按照本教程去了T,所以我不确定我哪里出错了,但我真的很感激别人的帮助。
提前谢谢。
编辑:所以我推送到heroku看看会发生什么,我的资产链接发生了变化(我的样式表链接到AWS)但它们仍然没有上传到存储桶,所以当发生这种情况时,我的网站当然没有样式。希望这是足够的信息。答案 0 :(得分:1)
您需要确保您的AWS密钥位于您的heroku应用中。您可以查看本教程,您必须访问heroku控制台并输入密钥,然后将其定向到heroku应用程序。
https://devcenter.heroku.com/articles/paperclip-s3
此链接也可能有所帮助。 https://medium.com/self-directed-learning/rails-4-heroku-the-asset-pipeline-quandary-9ba1f595102a
在推送并推送到heroku之前,还要在终端中运行此命令。 RAILS_ENV =生产包exec rake资产:预编译
在你的config / envirement / production.rb中确保这是真的。 config.assets.compile = true
如果您要沿着这条路线行进,还要确保您的生产商名称与您的密钥一起列在您的production.rb中,或者放在回形针或载波文件中。
看起来文章使用雾。
config.fog_credentials = {
:provider => 'AWS',
:aws_access_key_id => 'key',
:aws_secret_access_key => 'key',
} config.fog_directory =' bucket_name'