示例#1
0
def all_users_page(request):
    activity(request)

    users = User.objects.all()
    paginator = Paginator(users, 8)
    page = request.GET.get('page')

    try:
        users = paginator.page(page)
    except PageNotAnInteger:
        # Если страница не является целым числом, поставим первую страницу
        users = paginator.page(1)
    except EmptyPage:
        # Если страница больше максимальной, доставить последнюю страницу результатов
        users = paginator.page(paginator.num_pages)

    return render(request, 'account/all_users.html',
                  context={'page_obj': page, 'users': users, 'users_dict': to_dict_list(users)})
示例#2
0
 def to_dict(self):
     return {
         'id':
         self.id,
         'user':
         self.user.to_dict(),
         'shop':
         self.shop,
         'status':
         self.status,
         'products':
         to_dict_list(self.products.all()),
         'total_amount':
         self.get_amount(),
         'delivery_status':
         self.delivery_method.name
         if self.delivery_method else 'Не выбрано',
     }
示例#3
0
def shop(request, shop_id):
    activity(request)

    shop_obj = Shop.objects.filter(id=shop_id).first()
    products = to_dict_list(Product.objects.filter(shop_id=shop_id).all())

    paginator = Paginator(products, 8)
    page = request.GET.get('page')

    try:
        products = paginator.page(page)
    except PageNotAnInteger:
        # Если страница не является целым числом, поставим первую страницу
        products = paginator.page(1)
    except EmptyPage:
        # Если страница больше максимальной, доставить последнюю страницу результатов
        products = paginator.page(paginator.num_pages)

    return render(request, 'shop_shop.html', context={'shop': shop_obj, 'products': products})
示例#4
0
def home_page(request):
    activity(request)

    shops = Shop.objects.all().order_by('-rating')[:4]
    products = Product.objects.all().order_by('-rating')[:4]
    users = to_dict_list(User.objects.all().order_by('-rating')[:4])
    mcs = MasterClass.objects.all().order_by('?')[:4]
    mcs_dict = []
    for mc in mcs:
        mcs_dict.append(mc.to_dict())

    for user in users:
        user['profile_link'] = f'{request.build_absolute_uri()}user/{user["id"]}/'
    context = {
        'users': users,
        'shops': shops,
        'products': products,
        'mcs': mcs_dict,
        'card_products_count': request.user.cards.first().products.count() if request.user.is_authenticated and request.user.cards.first() and request.user.cards.first().products.first() else '0'
    }
    return render(request, 'home_page.html', context=context)
示例#5
0
def all_blogs(request):
    activity(request)

    blog_objects = MasterClass.objects.all()
    paginator = Paginator(blog_objects, 5)
    page = request.GET.get('page')

    try:
        mcs = paginator.page(page)
    except PageNotAnInteger:
        # Если страница не является целым числом, поставим первую страницу
        mcs = paginator.page(1)
    except EmptyPage:
        # Если страница больше максимальной, доставить последнюю страницу результатов
        mcs = paginator.page(paginator.num_pages)

    return render(request,
                  'all_creative_blogs.html',
                  context={
                      'page_obj': page,
                      'articles': mcs,
                      'mcs': to_dict_list(mcs)
                  })