我处理的文件附件与Attachment_fu我的Rails应用程序,它提供了一个public_filename方法来检索文件的URL。 我使用的是一种叫做封面模特,所以如果我想打电话给上传的封面图片的URL,在视图中我会做:

<%= image_tag(@cover.public_filename) %>

当用户有相应的连接这一切正常,但在我的应用程序是不是用户上传附件的要求。

因此,调用@cover.public_filename会抛出一个TypeError:无法转换成零字符串原因很明显,该文件是零

不过,我无法添加逻辑这个问题,因为有效的对象是零,而我所有的努力与做这样的事情unless @cover.public_filename.nil?if @cover.public_filename == nil的都石沉大海,并导致同一类型的错误。

我是什么失踪?

有帮助吗?

解决方案

我没跟attachment_fu工作,但我看到public_filename是依赖于一些字段是零,当你没有连接连接方法。 这里我读了attachment_fu应该始终有附件 - 这可能是一个原因,它不为你工作。笔者还建议您使用回形针插件。看看吧!

其他提示

<%= image_tag(@cover.public_filename) unless @cover.nil? %>

对不起,无法评论,所以这里是一个更新而不是:

因为@cover.public_filename?@cover对象,因此没有nil方法public_filename?这里不能工作。

nil.respond_to?('public_filename?') #=> false

更新

请它:

<%= image_tag(@cover.public_filename) if @cover && @cover.public_filename? %>

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top