Change model field attribute in a DRY way

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
class FooBaseModel(models.Model):
    bar = models.CharField(help_text=_("before"))
    class Meta:
        abstract = True

class FooBar(FooBaseModel):
    def __init__(self, *args, **kwargs):
        super(FooBar, self).__init__(*args, **kwargs)

        # Change field data in a DRY way
        bar_field = self._meta.get_field_by_name("bar")[0]
        bar_field.help_text = _("New help text!")

More like this

  1. Add model form field meta data in a DRY way by jedie 3 years, 2 months ago
  2. DRY with common model fields (another way) by jmrbcu 4 years, 10 months ago
  3. Auto-documenting Django Models with Sphinx by Voightkampff 9 months ago
  4. Compare two instances of the same model by IzzaddinRuhulessin 1 year, 5 months ago
  5. change a widget attribute in ModelForm without define the field by jedie 3 years, 10 months ago

Comments

(Forgotten your password?)