Wenn ich versuche, ein Bildobjekt zu einem Imagefield ich die folgende Fehlermeldung erhalten zu speichern:Django ContentFile get_available_name() bekam ein unerwartetes Stichwort Argument ‚max_length‘
get_available_name() got an unexpected keyword argument 'max_length'
Der Code sieht wie folgt aus:
imagen_url = form.cleaned_data['imagen_url']
respuesta = requests.get(imagen_url)
imagen = Image.open(StringIO(respuesta.content))
stringio_obj = StringIO()
imagen.save(stringio_obj, format="JPEG")
final_image = stringio_obj.getvalue()
carta.creador = request.user
carta.ultima_revision = datetime.today()
carta.save()
print("carta_id: %s" % carta.id) # Works correctly till here
archivo_imagen = ContentFile(final_image, "0_" + carta.nombre) # Guarda la original con un 0 adelante
carta.imagen_base.save("0_" + carta.nombre, archivo_imagen, save=True)
Wenn ich versuche, das ContentFile
Objekt in ImageField des Modells zu speichern, funktioniert es nicht. Früher arbeitete es in einer niedrigeren Version von Django, aber da ich nach Django 1.10 wechselte, hörte es auf zu arbeiten.
Das Modell ist einfach, es sieht wie folgt aus:
def ubicar_img_base(instance, filename):
nombre_archivo = "0_" + slugify(instance.nombre) + ".jpeg"
path = "/".join([instance.grupo.nombre, nombre_archivo])
return path
class CartaMagicPy(models.Model):
imagen_base = models.ImageField(null=True, upload_to=ubicar_img_base)
Jede Beratung