Django 如何处理 AutoField 主键的自增?

How does Django handle the incrementation of the AutoField Primary Key?

在使用 postgresqlDjango 项目中,我曾经在数据库中插入了一个条目,有一天。有权访问它的其他人已使用 pgadmin4 在数据库中手动添加了 36 行其他行。当我想用 Django 项目添加新行时,我显然得到 IntegrityError,因为 Django 试图将 1 添加到 Django 项目添加的最后一个条目 ID(这是我认为它正在尝试做什么)。这是回溯:

duplicate key value violates unique constraint "register_catalog_pkey"
DETAIL:  Key (id)=(2) already exists.

如何告诉 Django 最后一个条目 id 是 36(用 pgadmin4 手动添加的最后一个值)?

我也尝试在 Django Admin 中添加 id 字段以便我可以对其进行编辑,但它没有显示出来。

class RegisterAdmin(admin.ModelAdmin)
    list_display_links = ['id',]
    list_display = ('id',)

我是否需要删除由 Django 处理的主键,并定义一个 IntegerField 作为主键?

register_id = models.AutoField(primary_key=True)

register_id = models.IntegerField(primary_key=True)

使用ALTER SEQUENCE命令

ALTER SEQUENCE <b><table_name></b>_id_seq RESTART WITH 37

例如:ALTER SEQUENCE myapp_register_id_seq RESTART WITH 37