Как заставить Django вставить значение ID в поле, которое я указываю (модели, взятые из существующей БД)?

Контекст:

У меня есть уже существующая база данных, которую я не должен изменять. Я использовал manage.py inspectdb и вытащил нужные мне модели в webapi/models.py.

У меня следующая модель:

class Clerk(models.Model):
    clientid = models.BigAutoField(db_column='clientId', primary_key=True)
    clerkname = models.CharField(db_column='clerkName', max_length=30)
    ...
    class Meta:
        managed = False
        db_table = 'Clerks'

Я не уверен, нужно ли мне показывать больше кода для целей этого теста, но мне кажется, что я должен быть в состоянии просто создать экземпляр и увидеть, что ему был присвоен идентификатор.

Однако, как показано ниже, id не присваивается. Я также включил некоторые меры по устранению неполадок, которые я предпринял

>>> from chokowebapi.models import Clerk
>>> Clerk.objects.all()
<QuerySet []>
>>> clerk = Clerk(clerkname="hi")
>>> clerk.clientid

Дополнительное устранение неполадок (продолжение приведенного выше фрагмента)

Я пробовал изменить clientid на models.IntegerField, и я также пробовал изменить managed на True в классе Meta.

Насколько я знаю, primary_key=True должно позволить django знать, что нужно увеличивать это поле в новых экземплярах. Что я могу упустить?

Вернуться на верх