私は本当に壁にぶつかり、助けが必要です! ここまで読んでくれてありがとう!
データベース要求のために ROR Web サーバーと通信し、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
「作成する」
どんな助けでも非常に感謝しています。
クリス
ありがとう!