我是 django 的新手,并试图将外键返回给受让人和记者的用户。
但是当我尝试对 South 应用更改时,我收到错误
ValueError: The database backend does not accept 0 as a value for AutoField.
我的模型代码:
class Ticket(models.Model):
title = models.CharField(max_length=80)
text = models.TextField(blank=True)
prioritys = models.ForeignKey(Prioritys)
ticket_created = models.DateTimeField(auto_now_add=True)
ticket_updated = models.DateTimeField(auto_now=True)
assignee = models.ForeignKey(User, null=True, related_name='assignee')
reporter = models.ForeignKey(User, null=True, related_name='reporter')
def escaped_text(self):
return markdown.markdown(self.text)
def __unicode__(self):
return self.text
如果你跑步时发生这种情况manage.py migrate
(or manage.py syncdb
在旧版本中),原因可能是您尝试向使用 AutoField 作为主键的模型添加外键,并使用 0 作为默认值。编辑迁移文件并删除参数default=0
在 AddField 操作中。它在 Django 1.10 中对我有用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)