Files
django-maraudes/suivi/search.py
2016-08-24 19:26:07 +02:00

49 lines
1.3 KiB
Python

from django.views.generic.edit import FormMixin, ProcessFormView
from django import forms
from django.shortcuts import redirect
class SearchForm(forms.Form):
search_text = forms.CharField(64, widget=forms.widgets.TextInput(attrs={'placeholder':"NotYetImplemented"}))
def __init__(self, *args, **kwargs):
kwargs['prefix'] = 'search'
return super().__init__(*args, **kwargs)
def clean(self):
super().clean()
#Do search and store result
self.result = None
def is_valid(self):
valid = super().is_valid()
if not self.result:
return False
return valid
class SearchFormMixin(FormMixin):
""" Add 'search_form' to context.
Made compatible with NoteFormMixin using 'prefix' argument in get_form
"""
def get_form(self, prefix):
if prefix == 'search':
return SearchForm()
return super().get_form(prefix)
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['search_form'] = self.get_form('search')
return context
""" What to do ?
- We shall use 'django-watson', need to install it
- Create view to parse search_form data then redirect
- Link form in menu_sujets to this view
"""
class SearchFormProcessView(ProcessFormView):
pass