Estoy migrando de una base de datos SQLite de prueba a una base de datos PostgreSQL.Django y PostgreSQL: valor demasiado largo para caracteres de tipo que varían (512)
Tengo un objeto de muestra que se inserta en la base de datos, que funcionó en SQLite pero me da un error en PostgreSQL.
Código fragmento es:
car = CarItem.objects.create(
user = motor_trend,
name = 'Camaro 2010',
category = cars,
condition = 'Used',
price = '28,547.00',
production_year = '2010',
color_interior = 'Black',
color_exterior = 'Inferno Orange Metallic',
reference = 'PRC17288',
location_of_creation = 'Undisclosed',
location_current = 'Columbus, OH, USA',
description = 'GORGEOUS ORANGE SS!!',
)
car.save()
Me estoy haciendo un:
DatabaseError at /create/
value too long for type character varying(512)
Traceback
(...)
description = 'GORGEOUS ORANGE SS!!',
(...)
El campo de descripción de mi modelo tiene un 512 m de eslora máxima Char:
description = models.CharField(max_length=512,default='')
pero hay De ninguna manera esa cadena tiene más de 512 bytes.
He leído publicaciones anteriores sobre este error, una que hace referencia a la codificación. No parece ser el caso.
Alojado en Webfaction. Creé una base de datos, con codificación utf-8, y procedí a usar syncdb. Syncdb funcionó perfectamente, pero ahora esta inserción de objetos falla.
¿Alguien puede dar alguna entrada? Gracias.
Porque son claves foráneas. Y el ORM de Django probablemente cita los nombres de los campos correctamente. –
Sí, esas son las variables de Django definidas anteriormente, algunas cadenas, otros objetos. Sin embargo, ¿esto está relacionado con el problema de descripción? ¿El hecho de que tengo un campo de usuario está causando el problema de descripción? –
@VascoPatricio: Sin conexión obvia al problema, no. Como no había nada obvio, estaba buscando algo sospechoso. Busqué en el manual y creo que encontré algo ahora. Enmendé mi respuesta, eche un vistazo. –