Модель CharField Dynamic Choices с объектом экземпляра

Я не нашел ничего о том, чтобы иметь метод, возвращающий кортеж для выбора Charfield. Это можно сделать только для фильтров.

В принципе, у меня есть модель класса следующего вида:


def existing_document(instance):
    if instance.file == 'x'
         return [('test', 'test')]
    else
         return [('test1', 'test')]

class ModelInsert(models.Model):
    file = models.ForeignKey(ModelFile, on_delete=models.CASCADE, related_name='insert', null=True, blank=True)
    page = models.CharField(verbose_name="Position après la page:", max_length=3, validators=[RegexValidator('^[0-9]+$')])
    document = models.CharField(verbose_name='Document', choices=existing_document(), max_length=128)

Отправка метода в качестве выходной работы.

Но я хотел бы перехватить экземпляр моего текущего объекта (например, upload_to= из fileField), чтобы я мог выбрать, что будет отображаться.

Похоже, что это невозможно сделать непосредственно в методе, но, возможно, в init или что-то в этом роде

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