sách gpt4 ai đã đi

python - 初始值不适用于 django-filters 上的 ChoiceField

In lại 作者:行者123 更新时间:2023-12-04 17:28:34 25 4
mua khóa gpt4 Nike

我有以下 django-filter ( https://github.com/alex/django-filter/) 过滤器:

class ApplicationFilter(django_filters.FilterSet): status = django_filters.ChoiceFilter(choices=STATUS2,)

状态包含以下元组列表:

STATUS_CHOICES = ( ( '', u'All'), ( 'NEW', u'New'), ( 'SUBMIT', u'Submit'), ( 'CANCEL', u'Cancel'),)

现在,我想为该过滤器设置一个不同于空过滤器(全部)的初始值。所以我尝试了以下操作,但都 没有成功:

我。向字段添加初始参数:status = django_filters.ChoiceFilter(choices=STATUS2, initial = 'NEW' ) 或使用数组 status = django_filters.ChoiceFilter(choices=STATUS2, initial = ['NEW'] )。使用默认初始值呈现的表单。

二。修改表单的__init__:

    def __init__(self, *args, **kwargs): super(ApplicationFilter, self).__init__(*args, **kwargs) self.form.initial['status']='NEW' self.form.fields['status'].initial='NEW'
-- 再次使用默认初始值 (All) 呈现表单...还尝试将值设置为 ['NEW'] -- 再次失败。

有人知道应该如何处理吗?我正在使用最新的(来自 github)版本的 django-filter。

TIA

1 Câu trả lời

Hãy thử cách này:

def __init__(self, *args, **kwargs):
super(ApplicationFilter, self).init(*args, **kwargs)
self.initial['status'] = 'NEW'

关于python - 初始值不适用于 django-filters 上的 ChoiceField,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23733106/

25 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com