采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
createsuperuser, 输入用户名,邮箱,密码之后提示以下错误 使用的是anaconda3下创建的py2.7虚拟环境,django1.9版本 代码中唯一使用了gender的字段是在user的models中, UserProfile的gender字段,已经将其长度改成了10然而依然报这个错误。
麻烦老师看看是什么问题,如何解决,谢谢。
已解决。
发现makemigrations以后,user 目录下migration文件中产生了很多auto文件,我每makemigrations一次,就增加一个,而0001 initial文件没有改变, 同时数据库也没有改变。
于是我进行了以下步骤
将auto文件都删掉了,之留下了0001_initial,
手动修改了0001_initial中gender的数据长度
再次makemigrations
没有报错,于是migrate
完成后在数据库中审查,发现长度依然没变,于是继续手动修改数据库中的字符长度
createsuperuser 输入用户名邮箱密码,没有报错~
完成
这里一般initial是第一次做migrations生成的文件,后面没做一次修改都会有一个auto的py文件生成,不会修改之前的文件的,如果每次都是通过model和migrations修改数据库而不是手动去通过navicat修改数据库的话 是不会造成这个地方出错的
你是怎么改的这个字段呢?是直接该的数据库还是通过数据库迁移命令 make miration make migrate 呢 对数据库做任何修改的操作 都要通过orm进行同步
是通过ORM 改的,修改了models里的长度, 然后makemigrations, migrate。
登录后可查看更多问答,登录/注册
【毕设】Python 2.7到3.6 完美适配,Django升级2.0
14.6k 81
748 4
1.6k 22
1.4k 20