是的,使列变宽。错误消息非常清楚:您的200个字符太大,无法放入varchar(4)。
首先,将您的模型字段max_length
属性从4更新为一个期望的数字,该数字将足够长,可以容纳您要输入的数据。
接下来,您必须更新数据库列本身,因为django不会自动更新现有列。
以下是一些选择:
1:删除数据库,然后再次运行syncdb。警告:您将丢失所有数据。
2:通过sql手动更新列。
输入python manage.py dbshell
以进入数据库外壳并输入
ALTER TABLE my_table ALTER COLUMN my_column TYPE VARCHAR(200)
3:学习和使用django south这样的数据库迁移工具,它将帮助您的数据库更新模型代码。