【发布时间】:2009-04-28 16:26:26
【问题描述】:
我正在使用 Attachment_fu 在我的 Rails 应用程序中处理文件附件,它提供了一个 public_filename 方法来检索文件的 URL。
我在一个名为 Cover 的模型上使用它,所以如果我想调用上传的封面图片的 URL,在视图中我会这样做:
<%= image_tag(@cover.public_filename) %>
当用户有适当的附件时,这很好用,但在我的应用程序中,用户不需要上传附件。
因此,调用@cover.public_filename 会抛出一个TypeError: Can't convert nil into String,原因很明显,文件为nil。
但是,由于对象为 nil,因此我无法有效地为此问题添加逻辑,并且我所有尝试执行诸如 unless @cover.public_filename.nil? 或 if @cover.public_filename == nil 之类的操作都没有结果,并导致相同的类型错误。
我错过了什么?
【问题讨论】:
标签: ruby-on-rails ruby types attachment-fu