Python / Django: сделать поиск / запрос к базе данных внутри класса модели - PullRequest
0 голосов
/ 25 октября 2019

Как правильно искать таблицу и использовать ее последнее значение в качестве значения в новом экземпляре модели? Примерно так:

class MyClass(models.Model):
    id = models.AutoField(primary_key=True)
    obj = MyClass.objects.latest('id')
    my_field = models.IntegerField(default=(obj+1))

Мне нужен столбец БД, который отслеживает ключ primary_key, но не зависит от него и также может быть изменен. Также мне нужно использовать его значение по умолчанию при создании новых экземпляров модели.

1 Ответ

0 голосов
/ 25 октября 2019

вы можете использовать пользовательский конструктор, как описано в документации: https://docs.djangoproject.com/en/2.2/ref/models/instances/

вам нужно определить поле obj как целое число (для хранения идентификатора предыдущей записи) или как внешний ключ (если вы хотите сослаться на предыдущую запись БД). Во втором случае вам нужно будет передать имя модели конструктору ForeignKeyField в виде строки ('MyClass'), а не напрямую (MyClass).

...