Skip to main content
 首页 » 编程设计

python之如何在表单中使用 bool 字段之Python Django

2024年12月31日30Terrylee

我正在开发 Django 博客,我想在表单中使用 Boolean Field

这是我的代码:

class CreateProductForm(forms.Form): 
    name = forms.CharField(widget=forms.TextInput(attrs={'class':'form-control'})) 
    content = forms.CharField(widget=forms.Textarea(attrs={'class':'form-control', 'id': 'ck-editor-area'})) 
    excerpt = forms.CharField(widget=forms.Textarea(attrs={'class':'form-control', 'rows': '7'}), required=False) 
    price = forms.CharField(widget=forms.TextInput(attrs={'class':'form-control', 'placeholder': 'Amount'})) 
    status = forms.CharField(widget=forms.Select(choices=(('1', 'Active'),('0', 'Inactive'),), attrs={'class':'form-control'})) 
    quantity = forms.CharField(widget=forms.NumberInput(attrs={'class':'form-control'})) 

我想更改状态字段

status = forms.CharField(widget=forms.Select(choices=(('1', 'Active'),('0', 'Inactive'),), attrs={'class':'form-control'})) 

使用 bool 字段函数(真或假)

我该怎么办?谢谢

请您参考如下方法:

您可以选择某个值来表示 True 和 False(通过使用字符串),然后使用函数“强制”(例如通过 lambda 表达式):

status = forms.<b>Typed</b>ChoiceField( 
    <b>choices=((True, 'Active'), (False, 'Inactive')), 
    coerce=lambda x: x == 'True',</b> 
)

因此我们使用值 True 和 False,然后我们使用 coerce 将字符串表示返回 一个有效的 bool 值。