Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ############## in views.py
- from django.db.models import Q
- def search_patient(request):
- patient_search = request.GET.get('q') # represent the text input in our form
- search_id = request.GET.get('pid')
- if patient_search == '' and search_id == '':
- result_id = Patients.objects.all().order_by('-id')
- table_search = PatientsTable(result_id)
- table_search.paginate(page=request.GET.get("page", 1), per_page=page_no)
- elif search_id != None: # ('pid' in request.GET) and request.GET['pid']:
- result_id = Patients.objects.filter(Q(id=search_id)).all() # | Q(cardid__icontains=patient_search)
- table_search = PatientsTable(result_id)
- elif ('q' in request.GET) and request.GET['q'].strip():
- patient_search = request.GET.get('q')
- result_id = Patients.objects.filter(Q(address__icontains=str(patient_search))).all()
- table_search = PatientsTable(result_id)
- table_search.paginate(page=request.GET.get("page", 1), per_page=page_no)
- else:
- table_search = PatientsTable(Patients.objects.all().order_by('-id'))
- table_search.paginate(page=request.GET.get("page", 1), per_page=page_no)
- context = {
- 'patient_search': patient_search,
- 'table_patient_search':table_search,
- }
- return render(request, 'search/tables.html', context)
- ######### in tables.html
- <form class="form-inline mt-2 mt-md-0 float-left" method="GET" action="{% url 'search:search_patient' %}">
- <input class="form-control mr-sm-2" type="text" name='q' placeholder="Search Name & Address..."
- value="{{request.GET.q}}" aria-label="Search">
- <button class="btn btn-secondary my-2 my-sm-0" type="submit" hidden>Search</button>
- </form>
- <form class="form-inline mt-2 mt-md-0 float-left" method="GET" action="{% url 'search:search_patient' %}">
- <input class="form-control mr-sm-2" type="number" name='pid' placeholder="Search Patient ID..."
- value="{{request.GET.pid}}" aria-label="Search">
- <button class="btn btn-secondary my-2 my-sm-0" type="submit" hidden>Search</button>
- </form>
Add Comment
Please, Sign In to add comment