Задать вопрос
@Digi3057

Как обновлять models choice, если это поле ссылается на обьекты другой модели?

class ModelOne(models.Model):

    name = models.CharField(max_length=500, unique=True, verbose_name="Название", null=True, blank=True)
    short_name = models.CharField(max_length=500, unique=True, verbose_name="Короткое имя", null=True, blank=True)


class ModelTwo(models.Model):

    SOME_CHOICES = []
    objects_model_one = ModelOne.objects.all()
    for some in objects_model_one:
        choice_list = [str(some.name), str(some.name)]
        choice_tuple = tuple(choice_list)
        SOME_CHOICES.append(choice_tuple)

    field_for_select = models.CharField(
        choices=SOME_CHOICES,
        default='Name',
        max_length=500,
        verbose_name="Наименование",
    )


Прикладываю участок кода, чтобы дать понять, какой функционал требуется.
В модели ModelTwo нужно, чтобы в форме добавления обьекта через админку показывались на выбор доступные имена модели ModelOne. В приведенном выше коде если я добавляю через админку объект ModelOne, параметр name этого объекта не показывается в секторе выбора при создании объекта модели ModelTwo, пока я не перезапущу сервер Django. Готов выслушать направления, по которым можно было бы изучить документацию для реализации такого функционала или варианты доработки моего кода
  • Вопрос задан
  • 77 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Компьютерная академия «TOP»
    Разработка на Python
    1 год
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы