我正试图将Heroku和Cloudinary一起使用,但由于不存在配置变量,所以slug编译不起作用。Cloudinary需要一个环境变量或Cloudinary.yml。我不想让repo成为存储Cloudinary/yml文件的私有repo。
我该怎么办?
您现在可能已经找到了一个好的解决方案,但以防万一,我建议您使用Heroku的环境配置。
在cloudinaryyml中使用环境变量:
production:
cloud_name: sam-thornton
api_key: <%= ENV["CLOUDINARY_API_KEY"] %>
api_secret: <%= ENV["CLOUDINARY_API_SECRET"] %>
enhance_image_tag: true
static_image_support: true
然后从终端设置您的Heroku配置:
heroku config:set CLOUDINARY_API_KEY=YOUR_KEY
heroku config:set CLOUDINARY_API_SECRET=YOUR_SECRET
通过这种方式,您可以将cloudinaryyml文件安全地保存在公共存储库中(因此仍然可以将其与Heroku同步),而无需发布敏感信息。
事实证明,追加config.assets.initialize_on_precompile = false
将更正预编译。