Rails 5, "nil is not a valid asset source"
Rails 5, "nil is not a valid asset source"
我刚刚升级到 Rails 5,我在尝试显示图像时遇到了一个奇怪的问题。
我有 Rails 4:
的确切代码
<%= image_tag article.image_url(:thumb) %>
但升级后我得到:
nil is not a valid asset source
在升级到 Rails 5 之前,我没有遇到任何类似的问题。
这里可能有什么问题?会不会是其他原因而不是 Rails 升级问题?
我不知道这是否是紧凑的解决方案,但这段代码可以工作。
在您的上传器中激活回退方法。
def default_url
"/assets/fallback/" + [version_name, "default.png"].compact.join('_')
end
希望对您有所帮助。
干杯 (y)
问题是我试图显示 不存在的图像。
添加 unless article.image.blank?
解决了它:
<%= image_tag article.image_url(:thumb) unless article.image.blank? %>
编辑: 在 Rails 4 中,这将不会毫无错误地呈现任何内容,而在
Rails 5 它会引发错误。所以这实际上是一个升级问题。
非常感谢@BookOfGreg 指出这一点。
尝试一下,您需要在代码中添加 unless 条件。您需要添加以下代码
<%= image_tag article.image_url(:thumb) unless article.image.blank? %>
我希望这段代码对未来的读者有所帮助。
<td><%= image_tag image.picture.url, size: "100x100" unless image.picture.url.blank? %></td>
没有 unless image.picture.url.blank?
部分代码,
"nil is not a valid asset source"
上传空图片时显示。
我刚刚升级到 Rails 5,我在尝试显示图像时遇到了一个奇怪的问题。
我有 Rails 4:
的确切代码<%= image_tag article.image_url(:thumb) %>
但升级后我得到:
nil is not a valid asset source
在升级到 Rails 5 之前,我没有遇到任何类似的问题。
这里可能有什么问题?会不会是其他原因而不是 Rails 升级问题?
我不知道这是否是紧凑的解决方案,但这段代码可以工作。
在您的上传器中激活回退方法。
def default_url
"/assets/fallback/" + [version_name, "default.png"].compact.join('_')
end
希望对您有所帮助。
干杯 (y)
问题是我试图显示 不存在的图像。
添加 unless article.image.blank?
解决了它:
<%= image_tag article.image_url(:thumb) unless article.image.blank? %>
编辑: 在 Rails 4 中,这将不会毫无错误地呈现任何内容,而在 Rails 5 它会引发错误。所以这实际上是一个升级问题。
非常感谢@BookOfGreg 指出这一点。
尝试一下,您需要在代码中添加 unless 条件。您需要添加以下代码
<%= image_tag article.image_url(:thumb) unless article.image.blank? %>
我希望这段代码对未来的读者有所帮助。
<td><%= image_tag image.picture.url, size: "100x100" unless image.picture.url.blank? %></td>
没有 unless image.picture.url.blank?
部分代码,
"nil is not a valid asset source"
上传空图片时显示。