我在创建应用程序时遇到了这个问题。因此,每当我添加第一条评论时,问题都不会出现,但当我第二次尝试时,我会收到此错误:
重复的键值违反了唯一约束“tripplanner_discussion_author_id_key”详细信息:键 (author_id)=(1) 已存在。
我试图把唯一=False
放到 models.py,但它根本没有帮助。
models.py
class Discussion(models.Model):
author = models.OneToOneField(User, on_delete=models.CASCADE, unique=False)
group = models.ForeignKey(Trip, on_delete=models.CASCADE, unique=False)
text = models.TextField()
created_date = models.DateTimeField(default=timezone.now)
views.py
class DiscussionView(LoginRequiredMixin, CreateView):
model = Discussion
template_name = 'tripplanner/discussion.html'
fields = ['text']
success_url = '/'
def form_valid(self, form):
form.instance.author = self.request.user
form.instance.group = self.trip
return super(DiscussionView, self).form_valid(form)
更新
当我登录到另一个用户时,一个帖子的问题消失了,然后又出现了。所以要解决的问题是使这个author_id唯一。
尝试删除< code>unique = False,然后进行迁移
在姜戈
一对一的关系。从概念上讲,这类似于unique=True的ForeignKey
如果您检查源代码一对一字段,它将在初始化中设置唯
一。
我认为您应该使用ForeignKey
而不是OneToOne
。
当并发客户机试图将数据插入子表时,我们面临唯一的约束冲突问题。 假设我们有1以下的表格。用户user_id、first_name、last_name。2.项目project_idproject_name和project_description。 两者都有着多对多的关系。 当两个客户端试图创建一个新用户时。假设client1创建了user1(id=aa1),子记录项目(id=1)。Client2还创
这是我的stacktrace: 学生表: 学生实体:学生标识默认为自动递增 postgres控制台(这些学生由sql脚本创建): 在此处输入图像描述 我也尝试过这样生成,但这没有帮助 我用postgreql它似乎我有问题与id Generator,谢谢你的想法和答案
我在django应用程序中创建了一个模型,并从pgadmin将数据填充到表中,但现在当我试图从应用程序创建记录时,它抛出了这个完整性错误: 重复的键值违反了唯一约束“packsapp_foo_pkey” 详细信息:键(id)=(4)已经存在。 这是models.py 我是否总是必须从应用程序本身插入数据? Views.py
我必须交换同一表的不同行的属性。 有一列“reference_id”在 DB 中具有唯一的约束。 代码: A 级- B级- 异常跟踪:
问题内容: 我正在跟着我先前提出的一个问题,在这个问题中,我试图寻求从愚蠢/编写不佳的mysql查询到postgresql的转换。我相信我成功了。无论如何,我正在使用从mysql数据库手动移动到postgres数据库的数据。我正在使用如下查询: 我有理由相信这很好。但是,这导致了新问题。尝试提交时,我从django收到一条错误,指出: 我已经看过这里发布的一些回复,但是我还没有找到解决我的问题的方
我有一个笑话模型: 现在,当我试图迁移最后一行时,我得到了错误。基本上,我想将一个用户链接到Joke对象,因为我已经有了一个数据库,所以我希望默认值为1,这是管理员用户的id(我检查过了...).Makemigrations工作正常,但是当我尝试迁移时,我得到了这个: 我真的不明白怎么了。有什么想法吗?