Django ORM мой рост ID нелинейный при сохранении() данных в модель
В моем проекте django у меня очень странное поведение модели, связанное со значениями поля Primary id в db. У меня есть такая модель:
class Results(models.Model):
id = models.AutoField(primary_key=True)
device = models.ForeignKey(Device, null=True, on_delete=models.SET_NULL)
proj_code = models.CharField(max_length=400)
res_key = models.SlugField(max_length=80, verbose_name="Message unique key", unique=True)
read_date = models.DateTimeField(verbose_name="Datetime of vals readings")
unit = models.ForeignKey(ModbusDevice, null=True, on_delete=models.SET_NULL)
def __str__(self):
return self.device
class Meta:
indexes = [
models.Index(fields=['device', 'unit', 'proj_code', 'read_date']),
]
ну, в файле .py я сохраняю данные в эту таблицу следующим образом:
try:
p = Results(device=Device.objects.get(mac_id=macid),
proj_code=projid,
res_key=datalist[x]['key'],
read_date = topic_date,
unit=unit_ck)
p.save()
except IntegrityError as e:
if 'UNIQUE constraint' not in e.args[0]:
pass
except ObjectDoesNotExist:
pass
Итак, данные сохранены в db, но если я проверю поле "id", то увижу странное поведение, подобное этому:
|id|Others...
|1 |data
|2 |data
|3 |data
|11|data
|12|data
!99|data
Я не знаю почему, но мой id не растет линейно, как я ожидал. Кто-нибудь сталкивался с таким же поведением? Как я могу принудительно сохранить данные с нелинейным ростом id?
Заранее большое спасибо Мануэль