Mam aplikację zbudowaną w rubinach na szynach. Muszę przesłać prośbę o zwijanie do tej aplikacji, aby przesłać obrazy z lokalnego komputera. W aplikacji "Ruby on rails" używam spinacza do przesyłania zdjęć.Żądanie zwinięcia do przesłania obrazu z komputera lokalnego do aplikacji Ruby on Rails
Teraz to curl żądanie działa perfekcyjnie, gdyż nie ma w tym przesyłanie obrazu curl żądanie:
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
Teraz chcę przesłać obraz z mojego localmachine.
Dodanie "display_photo": @ test.jpg nie działa: To, co starałem: (. Ale jej nie działa)
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
Więc pytanie brzmi, jak przesłać obrazy/dane plików/filmów z żądania curl
EDIT
to jest mój kontroler:
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
W moim modelu:
class User < ActiveRecord::Base
has_attached_file :display_photo, :styles => { :medium => "200x200#", :thumb => "100x100#", :very_small=>"24x24#" }
end
Czy chcesz przesłać swoje zdjęcie w trybie offline ?! – phoet
@phoet inline what? to prośba o aktualizację twojego profilu. Chcę zaktualizować obraz profilu użytkownika. –
tak, ale próbujesz umieścić plik z komputera lokalnego w łańcuchu json. czy źle rozumiem twoje polecenie curl? – phoet