Sto migrando da un database SQLite di prova a un database PostgreSQL.Django e PostgreSQL - valore troppo lungo per il tipo di carattere che varia (512)
Ho un oggetto campione che è inserito nel database, che ha funzionato su SQLite ma mi sta dando un errore in PostgreSQL.
Codice frammento è:
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()
sto ottenendo un:
DatabaseError at /create/
value too long for type character varying(512)
Traceback
(...)
description = 'GORGEOUS ORANGE SS!!',
(...)
La descrizione campo del mio modello ha una 512 lunghezza massima char:
description = models.CharField(max_length=512,default='')
Ma c'è nessun modo in cui la stringa supera i 512 byte.
Ho letto post precedenti su questo errore, uno che si riferisce alla codifica. Non sembra essere il caso.
Sono ospitato su Webfaction. Ho creato un database, con la codifica utf-8, e ho proceduto a usare syncdb. Syncdb ha funzionato perfettamente ma ora questo inserimento di oggetti fallisce.
Qualcuno può dare qualche input? Grazie.
Perché sono chiavi esterne. E l'ORM di Django probabilmente riporta correttamente i nomi dei campi. –
Sì, quelle sono le variabili Django definite in precedenza, alcune stringhe, altri oggetti. Tuttavia, questo è legato al problema di descrizione? Il fatto è che ho un campo utente che causa il problema di descrizione? –
@VascoPatricio: Nessuna connessione ovvia al problema, no. Poiché non c'era nulla di ovvio, cercavo qualcosa di sospetto. Ho scavato nel manuale e penso di aver trovato qualcosa ora. Modificata la mia risposta, dai un'occhiata. –