Как исключить определенные поля 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?