def profiles(request, template_name="profiles/profiles.html"): if request.method == 'POST': search_form = SearchForm(request.POST) if search_form.is_valid(): terms = request.POST.get('terms', None) q = Q() for t in terms.split(" "): q = q|Q(first_name__icontains = t)\ |Q(last_name__icontains = t)\ |Q(username__icontains = t)\ |Q(email__icontains = t)\ |Q(profile__name__icontains = t)\ |Q(profile__about__icontains = t)\ |Q(profile__location__icontains = t)\ |Q(profile__website__icontains = t)\ users = User.objects.filter(q) return render_to_response(template_name, { "users": users.order_by("-date_joined"), "search_form": search_form, }, context_instance=RequestContext(request)) search_form = SearchForm() return render_to_response( template_name, { "users": User.objects.all().order_by("-date_joined"), "search_form": search_form, }, context_instance=RequestContext(request))
def search(request): if request.method == 'GET': form = SearchForm(request.GET) if form.is_valid(): options = dict() options['src_country'] = form.clean_src_country() options['dest_country'] = form.clean_dest_country() departure_date = form.cleaned_data['departure_date'] profile_list = Profile.objects.filter( range_start__lt=departure_date, range_end__gt=departure_date, **options) return render(request, 'profiles/search.html', { 'profile_list': profile_list, 'search_form': form }) else: print(form.errors) return HttpResponseRedirect('/') else: return HttpResponseRedirect('/')
def homepage(request): search_form = SearchForm() return render(request, 'homepage.html', {'search_form': search_form})