Django的ContentFile get_available_name()得到了一个意想不到的关键字参数“MAX_LENGTH”
问题描述:
当我尝试图像对象保存到的ImageField我得到以下错误:Django的ContentFile get_available_name()得到了一个意想不到的关键字参数“MAX_LENGTH”
get_available_name() got an unexpected keyword argument 'max_length'
的代码看起来是这样的:
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)
当我尝试将ContentFile
对象保存到模型的ImageField时,它不起作用。它曾经在较低版本的Django中工作,但是由于我转向Django 1.10,它停止工作。
的模式很简单,它看起来像这样:
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)
任何意见将有助于
答
好了,希望这是对别人是很有用的:我解决了它更新boto
和storages
。如果您使用亚马逊AWS,这听起来很熟悉。