Ruby on rails Heroku上具有暂存实例的Carrierwave存储路径管理
我在Heroku上有两个我的应用程序在生产中的实例,Ruby on rails Heroku上具有暂存实例的Carrierwave存储路径管理,ruby-on-rails,heroku,carrierwave,staging,Ruby On Rails,Heroku,Carrierwave,Staging,我在Heroku上有两个我的应用程序在生产中的实例,staging.myapp.com和www.myapp.com,我遵循以下工作流:。 由于我在AWS S3中使用Carrierwave,我想知道是否可以修改存储路径以指定每个实例,例如: def store_dir instance = "staging" | "production" #{instance}/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}
staging.myapp.com
和www.myapp.com
,我遵循以下工作流:。
由于我在AWS S3中使用Carrierwave,我想知道是否可以修改存储路径以指定每个实例,例如:
def store_dir
instance = "staging" | "production"
#{instance}/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}
end
我把我的资产放在不同的桶里,这样做
config.fog_directory = "myappname-#{Rails.env}-assets"
因此,它将使用bucket名称myappname生产资产或myappname暂存资产
在我的carrierwave初始化器中。确保您阅读了“在上配置Carrierwave”和“使用AmazonS3”好的,但是如何将
Rails.env
转换为“staging”
?我在Heroku上有两个不同的环境,但都显示Rails.env=“production”
Heroku配置:add RACK\u env=staging Rails\u env=staging