Exemplo n.º 1
0
Arquivo: views.py Projeto: cjs/bme
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))
Exemplo n.º 2
0
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('/')
Exemplo n.º 3
0
def homepage(request):
    search_form = SearchForm()

    return render(request, 'homepage.html', {'search_form': search_form})