
Untitled
By: a guest on
May 1st, 2012 | syntax:
Python | size: 1.02 KB | hits: 16 | expires: Never
# If no query is entered, will bring you to blank search screen. Otherwise will pull results from keyword, and results from content and display in search.html
@login_required(login_url='/auth/login/')
def search(request):
query = request.GET.get('q')
results = Notecard.objects.filter(section__semester__user=request.user)
if query:
results = results.filter(Q(notecard_body__icontains=query)|Q(notecard_name__icontains=query))
paginator = Paginator(results, 6)
try:
page = int(request.GET.get('page', '1'))
page = min(page, paginator.num_pages)
page = max(page, 0)
except ValueError:
page = 1
notecard_list = paginator.page(page)
return list_detail.object_list(
request,
queryset = Notecard.objects.filter(section__semester__user=request.user),
template_name = "notecards/search.html",
template_object_name = "results",
extra_context = {"results": results, "notecard_list": notecard_list,},
)