Skip to main content
 首页 » 编程设计

python之为 Django 模型表单集设置 label_suffix

2025年04月02日36davidwang456

我有一个用于创建 ProductFormSet 的产品模型。如何将 label_suffix 指定为默认冒号以外的内容?我希望它是空白的。我见过的解决方案似乎只适用于启动表单时 - here .

ProductFormSet = modelformset_factory(Product, exclude=('abc',))     
products = Product.objects.order_by('product_name') 
pformset = ProductFormSet(queryset=products) 

请您参考如下方法:

在 Django 1.9+ 中,您可以使用 form_kwargs选项。

ProductFormSet = modelformset_factory(Product, exclude=('abc',))     
products = Product.objects.order_by('product_name') 
pformset = ProductFormSet(queryset=products, form_kwargs={'label_suffix': ''}) 

在早期的 Django 版本中,您可以定义一个 ProductForm 类,在 __init__ 方法中将 label_suffix 设置为空白,然后将该表单类传递给 modelformset_factory 。

class ProductForm(forms.ModelForm): 
    ... 
    def __init__(self, *args, **kwargs): 
        super(ProductForm, self).__init__(*args, **kwargs) 
        self.label_suffix = '' 
 
ProductFormSet = modelformset_factory(Product, form=ProductForm, exclude=('abc',))