我真的碰壁了,需要一些帮助!谢谢你读到这里!
我正在编写一个应用程序,它可以与我的 ROR 网络服务器对话以获取数据库请求,并且由于 ActiveResource 工作得很好。但是我现在还需要将文件上传到服务器,并且我计划使用看起来很棒的 ASIHTTPRequest,但我的问题是我只是不确定如何在 ROR 端处理 POST 请求......我正在使用回形针但真的碰壁了。
在 ASIHTTP 方面,我只是在写:
[request setData:data withFileName:@"photo.jpg" andContentType:@"image/jpeg" forKey:@"asset[image]"];
在红宝石方面我正在做......
class Asset < ActiveRecord::Base
validates_attachment_presence :image
has_attached_file :image
end
class AssetsController < ApplicationController
protect_from_forgery :only => [:update, :destroy]
.....
但它总是失败,我很确定它与 POST 表单数据集有关,但我完全被卡住了。
我收到错误:
Parameters: {"assets"=>{"images"=>#<File:/var/folders/gM/gM15qjM2G3W0iVNaT1evD++++TI/-Tmp-/RackMultipart20091112-2285-2i0qq5-0>}} NoMethodError (You have a nil object when you didn't expect it! You might have expected an instance of ActiveRecord::Base. The error occurred while evaluating nil.[]): app/models/asset.rb:2 app/controllers/assets_controller.rb:46:in
`创建'
任何帮助都将非常感激。
克里斯
谢谢!