Ce que vous pouvez faire est de configurer un autre contrôleur et de travailler avec. Ce que paperclip fait est juste de mettre en place un attribut et des méthodes "photo" supplémentaires, réutilisant ainsi les propres méthodes Rails .new et .update_attributes. De cette façon, lorsque vous appelez /photos.xml avec cette information, ce que vous faites est juste une action post photo régulière, avec l'avantage supplémentaire de configurer son image.
Lorsque vous faites Object.photo = YOUR_PHOTO, vous utilisez actuellement un code Paperclip.
Ainsi, vous pouvez travailler avec quelque chose comme:
class ApplicationController < ActiveController::Base
def upload
photo = Photo.new
photo.photo = params[:photo]
# ... extra code
photo.save
render :text => "Ok"
end
end
Et ajouter une route comme:
map.upload "/upload(.:format)", :controller => "application", :action => "upload"
(ou son équivalent Rails3 si vous utilisez)
de cette façon , lorsque vous faites 'curl -F "[email protected]/pics/pic.jpg" http://something/upload.xml', vous appelez l'action de téléchargement et créez une photo en utilisant le paramètre 'photo'. La photo = params [: photo] prendra le fichier temporaire que vous avez chargé et continuera avec les tâches habituelles du trombone :)
Ceci est très utile, cela m'aide beaucoup. Merci! ;-) – Lamp
Je suis heureux d'avoir pu vous aider :) – Yaraher