Ano, udělejte sloupek širší. Chybová zpráva je zcela jasná:vašich 200 znaků je příliš velkých na to, aby se vešly do varchar(4).
Nejprve aktualizujte pole modelu max_length
atribut od 4 do čísla, o kterém očekáváte, že bude dostatečně dlouhé na to, aby obsahovalo data, která do něj vkládáte.
Dále musíte aktualizovat samotný sloupec databáze, protože django nebude automaticky aktualizovat stávající sloupce .
Zde je několik možností:
1:Zrušte databázi a znovu spusťte syncdb. Upozornění:ztratíte vše vaše data.
2:Ručně aktualizujte sloupec pomocí SQL:
Zadejte python manage.py dbshell
abyste se dostali do svého databázového shellu a zadejte
ALTER TABLE my_table ALTER COLUMN my_column TYPE VARCHAR(200)
3:Naučte se a používejte nástroj pro migraci databáze, jako je django jih což vám pomůže udržovat vaši databázi aktualizovanou kódem vašeho modelu.