0

当我将新代码推送到 Openshift 时,如何配置我的模型以避免在重新编译资产时删除它们的资产?

目前我的模型看起来像这样:

class Slide < ActiveRecord::Base
  attr_accessible :caption, :position, :visible, :photo
  has_attached_file :photo, :styles => { :thumb => "190x90>" }
  ...

我注意到当 Openshift 在推送新代码时重新编译我的资产时,上传的照片会从 /public 目录中删除。

我发现了一些看起来像这样的旧代码:

has_attached_file :attachment, :removable  => true,
  :url => "/attachments/:id/:style/:basename.:extension",
  :path => ":rails_root/tmp/attachments/:id/:style/:basename.:extension"  

我应该在上面的代码片段中尝试类似的东西,还是有一个选项可以在 Openshift 配置中更改它?

4

1 回答 1

1

$OPENSHIFT_REPO_DIR 结构将在每次 git push 时被您的本地 git repo 替换。

最佳做法是使用 $OPENSHIFT_DATA_DIR 而不是 $OPENSHIFT_REPO_DIR 来处理应用程序中的上传。

更多详情请查看:https ://openshift.redhat.com/community/kb/kb-e1065-what-is-application-crud-and-how-should-i-handle-it-in-openshift

于 2013-04-10T17:25:22.403 回答