Как исключить определенные поля DateField и CharFields в операторе IF?

Я очень новичок в Django, будучи по большей части парнем на C (embedded/Linux), поэтому прошу прощения за свое невежество. Я пробовал искать именно эту проблему, но безуспешно.

У меня есть проект Django, в котором есть формы. Когда форма не nullable, я хочу поставить звездочку в видимое имя, чтобы конечный пользователь знал, что она обязательна для заполнения

Следовательно, мы создали следующий код:

# we need to add a * to the label if the fields are not nullable
model = self.Meta.model
nullable_fields = [f.name for f in model._meta.get_fields() if f.null]

for visible in self.visible_fields():
    # if the field is not nullable add an asterix,
    # that is if the label doesn't already have one for some arbitrary reason
    if visible.name not in nullable_fields and not visible.label.endswith("*"):
        visible.label = visible.label + ' *'
< < <
    class BU(SoftDeleteObject, models.Model):
        class Meta:
            verbose_name_plural = "Business Units"
   
        users = models.ManyToManyField(
            'User', blank=True, verbose_name="Gebruikers met toegang", through='UserBu', related_name='users')

    class EmailTemplate(SoftDeleteObject, models.Model):
        cc = models.ManyToManyField(
            Group,
            related_name='cc',
            verbose_name="CC",
            help_text=(
                "<ul>"
                "<li>Dit veld is <b>niet</b> van toepassing op de welkomstmail</li>"
                "</ul>"
            ),
            blank=True,
        )

class Process(SoftDeleteObject, models.Model):
    process_activities = models.CharField(
        max_length=2048, blank=True, verbose_name="proces activiteiten")

class ControlTest(SoftDeleteObject, ReferenceNumberValidator, SamePersonValidator, DateModelValidators, models.Model):
review1_due_date = models.DateField(verbose_name="Due date eerste reviewer",
                                    blank=True,
                                    null=True)
Посмотрите эти модели:

Users, process_activities, EmailTemplate и review1_due_date здесь отображаются со звездочкой. Я больше не могу вносить изменения в models.py, так как мы слишком далеко в разработке. Как я могу исключить вышеуказанные поля в предыдущем операторе if?

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