def search(search_text, spectacles): search_text = unquote_plus(search_text) list_region = Region.objects.filter(name__icontains=search_text) list_region_child = RegionChild.objects.filter( Q(name__icontains=search_text) | Q(region__in=list_region.values_list('id')) ) list_region_child2 = RegionChild2.objects.filter( Q(name__icontains=search_text) | Q(region_child__in=list_region_child.values_list('id')) ) list_lieux = Lieu.objects.filter( Q(name__icontains=search_text) | Q(adress__icontains=search_text) | Q(city__icontains=search_text) | Q(region__in=list_region_child2.values_list('id')) ) list_rep = Representation.objects.filter(lieu_id__in=list_lieux.values_list('id')) list_associations = Association.objects.filter(name__icontains=search_text) list_spectacles = spectacles.filter( Q(name__icontains=search_text) | Q(presentation_cahier__icontains=search_text) | Q(presentation__icontains=search_text) | Q(id__in=list_rep.values_list('spectacle')) | Q(associations__in=list_associations.values_list('id')) ) return list_spectacles
def search(search_text, spectacles): search_text = unquote_plus(search_text) list_region = Region.objects.filter(name__icontains=search_text) list_region_child = RegionChild.objects.filter( Q(name__icontains=search_text) | Q(region__in=list_region.values_list('id'))) list_region_child2 = RegionChild2.objects.filter( Q(name__icontains=search_text) | Q(region_child__in=list_region_child.values_list('id'))) list_lieux = Lieu.objects.filter( Q(name__icontains=search_text) | Q(adress__icontains=search_text) | Q(city__icontains=search_text) | Q(region__in=list_region_child2.values_list('id'))) list_rep = Representation.objects.filter( lieu_id__in=list_lieux.values_list('id')) list_associations = Association.objects.filter(name__icontains=search_text) list_spectacles = spectacles.filter( Q(name__icontains=search_text) | Q(presentation_cahier__icontains=search_text) | Q(presentation__icontains=search_text) | Q(id__in=list_rep.values_list('spectacle')) | Q(associations__in=list_associations.values_list('id'))) return list_spectacles
def spectacles(request, page=None, categorie=None, search_term=None): if request.method == 'POST': if request.POST.get('search_term'): search_term = urlquote_plus(request.POST.get('search_term')) if categorie: return redirect(spectacles_redir, page=1, categorie=categorie, search_term=search_term) else: return redirect(spectacles_redir, page=1, search_term=search_term) else: if categorie: return redirect(spectacles_redir, page=1, categorie=categorie) else: return redirect(spectacles_redir, page=1) categories_list = CategorieSpectacle.objects.all() spectacles_list = Spectacle.objects.all() if categorie: categorie = get_object_or_404(CategorieSpectacle, slug=categorie) spectacles_list = spectacles_list.filter(categorie__in=get_children(categorie)) if search_term: spectacles_list = search(search_term, spectacles_list) unquoted_url = unquote_plus(search_term) paginator = Paginator(spectacles_list, 10) if page: page = int(page) else: page = 1 try: spectacles = paginator.page(page) except EmptyPage: spectacles = paginator.page(paginator.num_pages) return render(request, 'list_spectacles.html', locals())
def get_context_data(self, **kwargs): context = super(SuccessView, self).get_context_data(**kwargs) success_name = self.kwargs.get("next", "") try: next_url = reverse(success_name) except: next_url = unquote_plus(success_name) context['next_url'] = next_url return context
def get_context_data(self, **kwargs): context = super(ErrorView, self).get_context_data(**kwargs) error_name = self.kwargs.get("next", "") errmsg = self.kwargs.get('msg', "") try: next_url = reverse(error_name) except: next_url = unquote_plus(error_name) context['next_url'] = next_url context['errmsg'] = errmsg return context
def get_queryset(self): search = self.request.GET.get('search','') user_courses = self.request.GET.get('user_courses','') if search: search = unquote_plus(search) search = smart_str(search) query_set = Course.objects.filter(name__icontains=search) elif user_courses: query_set = self.request.user.course_set.all() else: query_set = Course.objects.all() return query_set
def get_context_data(self, **kwargs): '''这是内置的函数功能: 就是往模版里面传变量.''' context = super(SuccessTemView, self).get_context_data(**kwargs) # print(self.kwargs) # {'next': 'user_list'} # print(reverse(self.kwargs.get('next'))) # /accounts/user/list/ success_url = self.kwargs.get('next', '') # 成功页面之后要跳转的页面 # next_url = '/' # 180908 注释 try: next_url = reverse(success_url) except: next_url = unquote_plus(success_url) context['next_url'] = next_url return context
def get_context_data(self, **kwargs): context = super(ErrorTemView, self).get_context_data(**kwargs) print(self.kwargs) error_url = self.kwargs.get('next', '') # 成功页面之后要跳转的页面 errormsg = self.kwargs.get('msg', '') # 报错的内容 # next_url = '/' try: next_url = reverse(error_url) except: next_url = unquote_plus(error_url) context['next_url'] = next_url context['errmsg'] = errormsg return context
def dashboard(request): user = request.user products = Product.objects.all().order_by('-id')[:5] created = request.GET.get('created') deleted = request.GET.get('deleted') if created == 'False': from django.utils.http import unquote_plus reason = unquote_plus(request.GET.get('reason')) else: reason = "" cd = { 'user': user, 'products': products, 'created': created, 'reason': reason, 'deleted': deleted, } return render(request, 'dashboard.html', cd)
def spectacles(request, page=None, categorie=None, search_term=None): if request.method == 'POST': if request.POST.get('search_term'): search_term = urlquote_plus(request.POST.get('search_term')) if categorie: return redirect(spectacles_redir, page=1, categorie=categorie, search_term=search_term) else: return redirect(spectacles_redir, page=1, search_term=search_term) else: if categorie: return redirect(spectacles_redir, page=1, categorie=categorie) else: return redirect(spectacles_redir, page=1) categories_list = CategorieSpectacle.objects.all() spectacles_list = Spectacle.objects.all() if categorie: categorie = get_object_or_404(CategorieSpectacle, slug=categorie) spectacles_list = spectacles_list.filter( categorie__in=get_children(categorie)) if search_term: spectacles_list = search(search_term, spectacles_list) unquoted_url = unquote_plus(search_term) paginator = Paginator(spectacles_list, 10) if page: page = int(page) else: page = 1 try: spectacles = paginator.page(page) except EmptyPage: spectacles = paginator.page(paginator.num_pages) return render(request, 'list_spectacles.html', locals())
def _list_products_from_request(products, request, **kwargs): attributes = { attribute.key: attribute for attribute in Attribute.objects.filter( indexed=True ) if products.can_use_field('attr_%s' % attribute.key) } products = products.with_facets(*['attr_%s' % key for key in attributes]) for param in six.iterkeys(request.GET): values = request.GET.getlist(param) if param.startswith('attr_'): # Remove attr_ prefix param = param[len('attr_'):] if param not in attributes: continue attribute = attributes[param] field_name = 'attr_%s' % param sq = SQ() for value in values: try: value = attribute.get_type().parse(unquote_plus(value)) except ValueError: continue sq |= SQ(**{field_name: value}) products = products.filter(sq.facetted_exclude(field_name)) yield products