顶部的问题:如何在Rails中创建和保存图像,以便我的登台/生产服务器可以正确读取元标记和打开图形?
所以我启动并运行了宝石rmagick
,创建了像冠军的图像:
file_name = "#{@statement.id}.png"
file_path = "public/assets/" + file_name
canvas = Magick::Image.new(300, 100){self.background_color = 'white'}
gc = Magick::Draw.new
gc.pointsize(50)
gc.text(30,70, "#{@statement.text}".center(14))
gc.draw(canvas)
canvas.write file_path
@img = file_name
在我看来,我试图获取我刚刚创建的图像名称,并将其用于元标记(用于打开图形目的等)a la
<% file_name = '/public/assets/' + @img %>
<meta property="og:image" content=<%= file_name %>/>
Buuuuuut我的服务器说它无法在/public/assets/XYZ.png
找到图像,尽管我可以通过SSH进入框并亲自观察文件。
这是在Heroku服务器上,我尝试打开config.serve_static_files = true
和config.assets.compile = true
无效。
当然,目标是能够向某人发送指向我网站的链接,并将此.png显示为预览图像。
答案 0 :(得分:0)
如果没有MD5摘要,您将无法访问您的资产。
如果您的资源为public/assets/image.png
,则您最后只能使用其摘要访问它,例如public/assets/image-c655834251f73d7714351aa287be8556.png
。
您可以使用ERB帮助程序方法执行此操作。试试这个:
<%= asset_path('image.png') %>