【问题标题】:DRF : CreateAPIView - UNIQUE constraint failedDRF:CreateAPIView - UNIQUE 约束失败
【发布时间】:2020-10-21 10:22:36
【问题描述】:

我在前面使用带有 React 的 Django Rest Framework。 我想发布链接到 ForeignKey 用户的注释。

models.Note

class Note(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    content = models.TextField(blank=True, default='')

serializers.NoteSerializer

class NoteSerializer(serializers.ModelSerializer):
    user = serializers.PrimaryKeyRelatedField(queryset=User.objects.all())

    class Meta:
        model = Note
        fields = ('user', 'content')

当我发布{user: 1, content: "test"} 时,我收到以下错误消息:

UNIQUE constraint failed: app_note.user_id

如何将新笔记链接到现有用户,发布 user.id?

我认为我当前的代码正在尝试创建一个新的用户实例...

【问题讨论】:

    标签: django-rest-framework django-serializer


    【解决方案1】:

    您在 Note 模型中使用 OneToOneField。这意味着用户只能有一个笔记。 使用 ForeignKey 来为单个用户提供许多注释。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-17
      • 2021-12-09
      • 2017-08-05
      • 1970-01-01
      • 2017-03-04
      • 2020-04-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多