1

先看代码。

模型.py

class Schauspieler(models.Model):
    schauspieler = models.CharField(max_length=100)

    def __str__(self):
        return self.schauspieler

管理员.py

class SchauspielerAdmin(admin.ModelAdmin):
    ordering = ('schauspieler',)

admin.site.register(Schauspieler, SchauspielerAdmin)

本地主机 Schauspiler 表

你可以看到我有两次亚历山大路德维希的名字。这是管理员中的演员列表。因为演员的名字太多,我不记得我创造了哪些,哪些没有。如果名称存在,那么添加时应该会出错。我怎样才能做到这一点?

4

1 回答 1

0

您应该使用[Django-doc]制作schauspieler 唯一的:unique=True

class Schauspieler(models.Model):
    schauspieler = models.CharField(max_length=100, unique=True)

    def __str__(self):
        return self.schauspieler

但是,您可能首先需要删除已经存在的重复项,否则数据库将拒绝迁移,因为那时已经存在重复项。

于 2020-12-04T21:54:03.587 回答