【问题标题】:Field 'id' doesn't have a default value django-registration字段 'id' 没有默认值 django-registration
【发布时间】:2014-01-10 22:47:12
【问题描述】:

我最近将所有 django-registration 表从 sqlite 加载到 mysql 数据库中。它适用于登录用户,但现在当我尝试注册用户时出现此错误:

Warning at /accounts/register/
Field 'id' doesn't have a default value

我尝试使用这一行来使 id 字段自动递增,但我仍然收到错误。

ALTER TABLE auth_user MODIFY id INT(12) NOT NULL AUTO_INCREMENT;

感谢您的帮助。

编辑:我最终删除了所有的 dables 并使用 manage.py syncdb 重新创建它们,尽管这并不是真正的解决方案。

【问题讨论】:

  • 你已经解决了这个问题吗?
  • 我最终删除了我的数据库并创建了一个新数据库,所以很遗憾我没有任何方法来测试您的答案。

标签: mysql django django-registration


【解决方案1】:

您的表结构可能不正确。尝试:

  1. 创建测试项目并设置连接到测试空白数据库。
  2. 然后尝试在测试项目上做manage.py syncdb
  3. 比较当前项目和测试项目之间的表auth_user 结构。例如比较两个项目的创建表脚本。

【讨论】:

    猜你喜欢
    • 2017-04-26
    • 2014-11-09
    • 2015-07-19
    • 2018-07-31
    • 2010-10-22
    • 2020-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多