Sì, allarga la colonna. Il messaggio di errore è abbastanza chiaro:i tuoi 200 caratteri sono troppo grandi per stare in un varchar(4).
Innanzitutto, aggiorna i campi del modello max_length
attributo da 4 a un numero che prevedi sarà abbastanza lungo da contenere i dati che lo stai alimentando.
Successivamente devi aggiornare la colonna del database stessa poiché django non lo farà aggiorna automaticamente le colonne esistenti .
Ecco alcune opzioni:
1:Rilascia il database ed esegui di nuovo syncdb. Attenzione:perderai tutto i tuoi dati.
2:aggiorna manualmente la colonna tramite SQL:
Digita python manage.py dbshell
per entrare nella shell del database e digitare
ALTER TABLE my_table ALTER COLUMN my_column TYPE VARCHAR(200)
3:Impara e usa uno strumento di migrazione del database come django south che ti aiuterà a mantenere aggiornato il tuo database con il codice del tuo modello.