2009-12-21 2 views
0

создать фильтр ключевых слов в ДжангоВыбранный вариант в Джанго динамической choicefield

Мой views.py

#.............. 
if request.method == 'POST': 
       form = FilterContentForm(request.POST) 
     else: 
       form = FilterContentForm() 
     if len(keyword_dict)!= 0 and keyword_dict['customer_type']: 
      list_customer = filter(keyword_dict['customer_type']) 
      print keyword_dict 
      return render_to_response('customers_filter.html', {"customers":list_customer, 
                    "form":form 
                    }) 

Мой forms.py

#.............. 
CUSTOMER_TYPE_CHOICES = [('', 'All')] + [(customer_type.name, customer_type.name) for customer_type in Customer_Type.objects.all()] 

class FilterContentForm(forms.Form): 
    customer_type = forms.ChoiceField(choices=CUSTOMER_TYPE_CHOICES, required=False) 
    def __init__(self, *args, **kwargs): 
     if 'label_suffix' not in kwargs: 
      kwargs['label_suffix'] = '' 
     super(FilterContentForm, self).__init__(*args, **kwargs) 

я заполнить форму Thes значение шаблона

{% extends "base.html" %} 
{% block external %} 
    <script type="text/javascript" src="/site_media/scripts/search.js"></script> 
{% endblock %} 

{% block content %} 
{% block main %} 
<form id="search-form" method="GET" action="." name="f"> 
{{ form.as_ul }} 

<button id="filter">Filter</button> 
</form> 
<p> 
<div id="search-results"> 
    {% if customers %} 
    {% include 'customers.html' %} 
    {% endif %} 
</div> 
{% endblock %} 
{% endblock %} 

для exa mple есть 03 вариантов -Все -TDO -STU Я нажал TDO и я нажимаю кнопку Фильтр после этого это не помню, мои seletected варианты (ТДО)

И URL после фильтра щелкнул

show/?customer_type=TDO 

Кто-нибудь здесь может узнать, что мой problems.?What меня неправильно

ответ

1

HTML:

<form id="search-form" method="GET" action="." name="f"> 

вид:

if request.method == 'POST': 

Так .. возможно вам нужен метод = "POST"?

+0

благодарю вас за помощь. – kn3l

Смежные вопросы