Ruby on Railsに組み込まれたアプリケーションがあります。ローカル マシンから画像をアップロードするには、そのアプリケーションに curl リクエストを送信する必要があります。私のRuby on Railsアプリケーションでは、画像アップローダーにペーパークリップを使用しています。
このcurlリクエストにはアップロード画像がないため、このcurlリクエストは完全に正常に機能しています。
curl -v -H "Accept: application/json" -H "Content-type: application/json" -X PUT -d '{"user":{"first_name":"John","last_name":"Smith"},"token":"api"}' http://localhost:3000/users/8
次に、ローカルマシンから画像をアップロードしたいと思います。
"display_photo":@test.jpg の追加が機能していません: これは私が試していたことです: (しかし、機能していません。)
curl -v -H -F "Accept: application/json" -H "Content-type: application/json" -X PUT -d '{"user":{"first_name":"firstname","last_name":"lastname","display_photo":@test.jpg},"token":"api"}' http://localhost:3000/users/8
だから問題は、カールリクエストから画像/データファイル/ビデオをアップロードする方法です
編集
これは私のコントローラーです:
def update
@user = User.find(params[:id])
respond_to do |format|
if @user.update_attributes(params[:user])
format.html { redirect_to(@user, :notice => 'User was successfully updated.') }
format.json { render :file => "users/json/show.json.erb", :content_type => 'application/json' }
else
format.html { render :action => "edit" }
format.json {
@errors_object = @user
render :file => "shared/json/errors.json.erb", :content_type => 'application/json' }
end
end
end
私のモデルでは:
class User < ActiveRecord::Base
has_attached_file :display_photo, :styles => { :medium => "200x200#", :thumb => "100x100#", :very_small=>"24x24#" }
end