【发布时间】:2010-04-30 06:59:56
【问题描述】:
我有一个允许用户将文档上传到 Scribd 的应用程序。我尝试在 Rails 中使用 scribd_fu。控制器尝试保存模型时出错。
NoMethodError in DocumentsController#processupload
private method `gsub' called for nil:NilClass
这里是相关的控制器
def processupload
@document = Document.new(params[:document])
if @document.save
session[:scribdid] = @document.ipaper_access_key
else
xxxxx
这是相关的html表单
<form action="/documents/processupload" enctype="multipart/form-data" method="post">
<input name="authenticity_token" type="hidden" value="FqTCmlGGIvRjiaiaa+YtF50wgI7FfpxfrZsulLCbXcw=" />
<label class="label_h2">Upload a Document</label>
<input id="document_document_upload" name="document[document_upload]" size="30" type="file" /></div>
<div class="buttons"><button type="submit" class="positive"><img src="/images/icons/tick.png" alt="Save Document"/>Save Document</button>
</form>
有什么问题吗?
【问题讨论】:
-
请粘贴您的文档型号代码。
-
class Document
-
您可以发布异常跟踪吗? scribd_fu gem 中的某些内容应该会引发错误,因此找到该行会告诉您很多关于您缺少什么的信息。
-
这些是与 scribd_fu 相关的跟踪 /usr/local/lib/ruby/gems/1.8/gems/scribd_fu-2.0.6/lib/scribd_fu/paperclip.rb:40:in
prefix' /usr/local/lib/ruby/gems/1.8/gems/scribd_fu-2.0.6/lib/scribd_fu/paperclip.rb:15:inget_content_type' /usr/local/lib/ruby/gems/1.8/gems/scribd_fu-2.0.6/lib/scribd_fu.rb:189:inscribdable?' /usr/local/lib/ruby/gems/1.8/gems/scribd_fu-2.0.6/lib/scribd_fu.rb:184:inupload_to_scribd'
标签: ruby-on-rails gsub scribd