ruby-on-rails - Rails回形针和SVG图像

标签 ruby-on-rails svg paperclip

model.rb:
has_attached_file :image validates_attachment :image, :content_type => { :content_type => ['image/svg+xml'] }
结果为:“图像的扩展名与其内容不匹配,无效且无效”

尝试附加实际上有效的SVG文件时。

注意,我也尝试了'image/svg-xml'类型,结果相同

最佳答案

对我来说,此问题的解决方案是确保SVG文件的内容以此开头:

<?xml version="1.0" standalone="yes"?>

在后台,Paperclip使用file命令来确保文件的内容与文件名匹配。该检查似乎希望在SVG文件的开头声明此声明。

考虑到sample file from W3C甚至没有它,我发现这很不幸:
<svg id='svg1' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'>
  <circle r="32" cx="35" cy="65" fill="#F00" opacity="0.5"/>
  <circle r="32" cx="65" cy="65" fill="#0F0" opacity="0.5"/>
  <circle r="32" cx="50" cy="35" fill="#00F" opacity="0.5"/>
</svg>

我正在考虑在模型中添加一些逻辑,以在运行检查之前将其添加到内容的开头。不知道我是否应该这样做。

关于ruby-on-rails - Rails回形针和SVG图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22715887/

相关文章:

css - 使用 CSS 的 SVG 动画不起作用

ruby-on-rails - 自动创建 rails locale yaml 文件?

ruby-on-rails - XMLHttpRequest 无法加载 http ://localhost:3000/players/1. 预检响应具有无效的 HTTP 状态代码 404

html - 将 HTML5 Canvas 转换为 SVG 的方法?

javascript - 获取 Svg 中字符串的像素长度

ruby-on-rails-3 - 在我们的 Rails3/Heroku 应用程序中设置 Paperclip + AWS S3 以存储图像时遇到问题

ruby-on-rails - after_destroy 删除类别

ruby-on-rails - rails 。如何显示 "N/A"为零记录?

ruby-on-rails - Ruby on Rails/Paperclip Gem : Does not resize images, 似乎只保存 'original' 图像

ruby-on-rails - 如何安全地删除回形针附件上的链接?