Django: получение verbose_name и help_text для полей, добавленных через аннотацию в пользовательском менеджере
Я не уверен, правильно ли я подхожу к этому, но я хотел бы дать подробное имя и текст справки для полей, которые я добавляю в свою модель с помощью аннотации. Я использую оба этих поля при передаче их на веб-страницу и использую verbose_name в качестве заголовка таблицы и help_text в качестве всплывающей подсказки (в основном это вызов, который возвращает список словарей с именем поля, типом, подробным именем и текст справки). Я получаю эти значения, вызывая Student._meta.get_field (field).verbose_name или help_text. Теперь модель, которую я использую, выглядит примерно так:
class Student(models.Model): # new
first_name = models.CharField(verbose_name='first name', max_length=30, help_text='The first name of the student')
last_name = models.CharField(verbose_name = 'last name', max_length=30, help_text='The last name of the student')
date_of_birth=models.DateField(verbose_name='Date of Birth 'help_text = "student's date of birth")
sex = models.CharField(
max_length=1,
choices=(('M','Male'),
('F','Female')),
help_text=_('Sex of the student: (M)ale or (F)emale'),
verbose_name='Sex'))
Затем у меня есть другая модель, которая в основном отображает возраст ученика в его "категорию" (первокурсник-второкурсник-младший-старший). Затем мой пользовательский менеджер добавляет в QuerySet новое поле, которое определяет категорию на основе даты рождения и добавляет пол в конце (например, Senior-F или что-то в этом роде). Есть ли способ для меня, чтобы иметь возможность вызывать _meta.get_field (имя файла).verbose_name также в этих новых полях? Если нет, то каков более практичный способ сделать это? Я думал о том, чтобы добавить словарь словарей в мою модель со всеми полями и использовать его, но кажется, что это пустая трата усилий, поскольку поля в Django уже предоставляют эту функциональность.