Bài viết phổ biến của tác giả
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下 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/
Tôi là một lập trình viên xuất sắc, rất giỏi!