Rails 应用程序的正确路径或权限? - 没有这样的文件或目录@ rb_sysopen
Correct path or permissions for Rails app? - No such file or directory @ rb_sysopen
调用 Carrierwave gem 功能的 Rails 应用程序中的以下模型方法
before_save :generate_firma
def generate_firma
unless self.signature.nil?
instructions = self.signature.map { |h| "line #{h['mx'].to_i},#{h['my'].to_i} #{h['lx'].to_i},#{h['ly'].to_i}" } * ' '
path_signature_image="tmp/"+self.intervento_id.to_s+self.sequence+".png"
puts path_signature_image
system "convert -size 1010x395 xc:transparent -stroke blue -draw '#{instructions}' #{path_signature_image}"
self.firma = File.open(path_signature_image)
end
end
在执行时生成错误 No such file or directory @ rb_sysopen - tmp/58iniziofirma.png
,突出显示行 self.firma[...]
上的错误。
这是在使用 Ubuntu 16.04 在旧服务器 Ubuntu 14.04 上将应用程序迁移到新服务器时发生的,文件正确加载到 S3.
加载以前的版本时,我认为最大的罪魁祸首是权限问题,因为每个服务器实例在根级别、用户级别和发布级别都有一个 tmp 目录。
然而,两个服务器上的权限是相同的:
drwxrwxrwt (root level)
drwxrwxr-x (user level)
drwxrwxr-x (current release level)
如何解决这个问题?
新服务器?那么请问有什么不同?
撞了几下墙才发现服务器上没有安装一个重要的组件。 Whatever documentation there is out there 它没有说明 imagemagick
需要安装。
调用 Carrierwave gem 功能的 Rails 应用程序中的以下模型方法
before_save :generate_firma
def generate_firma
unless self.signature.nil?
instructions = self.signature.map { |h| "line #{h['mx'].to_i},#{h['my'].to_i} #{h['lx'].to_i},#{h['ly'].to_i}" } * ' '
path_signature_image="tmp/"+self.intervento_id.to_s+self.sequence+".png"
puts path_signature_image
system "convert -size 1010x395 xc:transparent -stroke blue -draw '#{instructions}' #{path_signature_image}"
self.firma = File.open(path_signature_image)
end
end
在执行时生成错误 No such file or directory @ rb_sysopen - tmp/58iniziofirma.png
,突出显示行 self.firma[...]
上的错误。
这是在使用 Ubuntu 16.04 在旧服务器 Ubuntu 14.04 上将应用程序迁移到新服务器时发生的,文件正确加载到 S3.
加载以前的版本时,我认为最大的罪魁祸首是权限问题,因为每个服务器实例在根级别、用户级别和发布级别都有一个 tmp 目录。
然而,两个服务器上的权限是相同的:
drwxrwxrwt (root level)
drwxrwxr-x (user level)
drwxrwxr-x (current release level)
如何解决这个问题?
新服务器?那么请问有什么不同?
撞了几下墙才发现服务器上没有安装一个重要的组件。 Whatever documentation there is out there 它没有说明 imagemagick
需要安装。