def compare(request): if request.method == 'POST': form = compare_form(request.POST) if form.is_valid(): search_text = form.cleaned_data['m1'] return compare_result(request, search_text) else: form = compare_form() return render(request, 'compare/compare.htm', {'form': form})
def add(request, mobile_id): ################################ # # ################################ if request.method == 'POST': form = compare_form(request.POST) if form.is_valid(): search_text = form.cleaned_data['m1'] return compare_result(request, search_text) else: form = compare_form() try: if len(request.session['m'])<4 : try: ids = [request.session['m'],] chain = itertools.chain(*ids) ids = list(set(chain)) ids.append(mobile_id) except: ids = [] ids = [mobile_id,] request.session['m'] = ids print request.session['m'] for x in request.session['m']: try: mobile = mobile + [Mobile.objects.filter(id = x)] except UnboundLocalError: mobile = [Mobile.objects.filter(id = x)] chain = itertools.chain(*mobile) mobile = list(set(chain)) else: mobile = [] for x in request.session['m']: try: mobile = mobile + [Mobile.objects.filter(id = x)] except UnboundLocalError: mobile = [Mobile.objects.filter(id = x)] chain = itertools.chain(*mobile) mobile = list(set(chain)) message = "*Cannot select more than 4 phones" return render(request, 'compare/compare.htm', {'message': message, 'mobile': mobile, 'form':form}) except Exception: try: ids = [request.session['m'],] chain = itertools.chain(*ids) ids = list(set(chain)) ids.append(mobile_id) except: ids = [] ids = [mobile_id,] request.session['m'] = ids print request.session['m'] for x in request.session['m']: try: mobile = mobile + [Mobile.objects.filter(id = x)] except UnboundLocalError: mobile = [Mobile.objects.filter(id = x)] chain = itertools.chain(*mobile) mobile = list(set(chain)) return render(request, 'compare/compare.htm', {'mobile': mobile, 'form':form})