46 lines
1.2 KiB
Python
46 lines
1.2 KiB
Python
from __future__ import absolute_import
|
|
|
|
from django import forms
|
|
from django.utils.translation import ugettext_lazy as _
|
|
|
|
from haystack.forms import SearchForm as BasicSearchForm
|
|
|
|
from .api import registered_search_dict
|
|
|
|
|
|
class SearchForm(BasicSearchForm):
|
|
pass
|
|
|
|
|
|
"""
|
|
class AdvancedSearchForm(SearchForm):
|
|
def __init__(self, *args, **kwargs):
|
|
super(AdvancedSearchForm, self).__init__(*args, **kwargs)
|
|
|
|
for model_name, values in registered_search_dict.items():
|
|
for field in values['fields']:
|
|
self.fields['%s__%s' % (model_name, field['name'])] = forms.CharField(
|
|
label=field['title'],
|
|
required=False
|
|
)
|
|
|
|
def search(self):
|
|
if not self.is_valid():
|
|
return self.no_query_found()
|
|
|
|
#if not self.cleaned_data.get('q'):
|
|
# return self.no_query_found()
|
|
for field in self.fields:
|
|
print 'field', field
|
|
#sqs = self.searchqueryset.auto_query(self.cleaned_data['q'])
|
|
|
|
if self.load_all:
|
|
sqs = sqs.load_all()
|
|
|
|
return sqs
|
|
|
|
def search(self):
|
|
sqs = super(ModelSearchForm, self).search()
|
|
return sqs.models(*self.get_models())
|
|
"""
|