Django:覆盖子模型中的字段标签或help_text

时间:2012-01-19 13:43:39

标签: python django django-models django-orm

我有一些模型都有一些共同的功能。每个模型都是物理库存类型的项目,因此它们共享诸如stock之类的内容,并且还共享诸如低库存警告事件(发送电子邮件)等内容。

我没有复制代码,而是编写了一个抽象模型并从中继承。

class LowStockModel(models.Model):
    stock = stock = models.IntegerField()
    out_of_stock_behaviour = models.CharField(max_length=20, choices=[...])

    class Meta:
        abstract = True

    def save(self, *args, **kwargs):
        super(self.__class__, self).save(*args, **kwargs)
        if self.stock <= 0:
            #...

我的问题是我需要更改标签或将不同的help_text添加到我正在生成的子类中的stock字段中。这非常重要,因为客户(及其员工)需要有关单位的说明。我已经尝试过在孩子身上闲逛__init__,但我没有到达任何地方。

tl; dr 如何更改子模型中字段的标签?

1 个答案:

答案 0 :(得分:0)

这应该有效:

class MyForm(ModelForm):
    def __init__(self, *args, **kwargs):
        super(MyForm, self).__init__(*args, **kwargs)
        self.fields['stock '].label = "any label"