¿Alguien podría dar un ejemplo completo sobre el uso del sabroso FileField, tanto del lado del servidor como del lado del cliente, por favor?Django-tastypie: ¿Algún ejemplo de carga de archivos en POST?
Esto es lo que he intentado:
#models.py
class Foo(models.Model):
img = models.ImageField(upload_to="images", null=True, blank=True)
body = models.CharField()
#api.py
class FooResource(ModelResource):
img = fields.FileField(attribute="image", null=True, blank=True)
class Meta:
queryset = Foo.objects.all()
Si trato de crear un objeto foo utilizando rizo, por ejemplo,
>>> curl -F "body=test" -F "[email protected]_img.png" http://localhost:8000/api/0.1/foo/
Un objeto foo se crea correctamente, pero el campo img
es nulo . Puedo ver en el depurador que al guardar el objeto bundle de hecho tiene un campo img que contiene un objeto InMemoryUploadedFile
, por lo que la solicitud probablemente sea correcta. ¿Dónde estoy equivocado? Los fragmentos de código son bienvenidos, ¡gracias!
Cuando hago esto, me sale el error: 'El formato indicado '/ form-data de varias partes' no tenía deserialización disponibles procedimiento de análisis que me estoy perdiendo algo simple? –
Encontré una solución al error de deserialización faltante [aquí] (http://stackoverflow.com/questions/12522332/how-to-access-post-data-inside-tastypie-custom-authentication), basado en [este github publicación] (https://github.com/toastdriven/django-tastypie/issues/42#issuecomment-5485666). –