Mesusjk
4 سال پیش توسط Mesusjk مطرح شد
4 پاسخ

ارور That page number is less than 1 در Django

سلام و وقت بخیر. دارم بک اند یه سایتی رو با django طراحی میکنم که موقع صفحه بندی محصولاتم به مشکل(ارور) برخوردم. برای صفحه بندی از paginator استفاده کردم و همچنین برای نمایش محصولات از کلاس بیس (ListView) استفاده کردم و مقدار paginate_by رو هم ست کردم. همین که از paginate_by استفاده کردم، ارور زیر برام اومد:

EmptyPage at /products
That page number is less than 1
Request Method: GET
Request URL:    http://127.0.0.1:8000/products
Django Version: 3.1.4
Exception Type: EmptyPage
Exception Value:    
That page number is less than 1

این هم کلاس بیس ویو:

class ProductList(ListView):
    template_name = "products/products_list.html"
    paginate_by = 2

    def get_queryset(self):
        return Product.objects.active_products()

ممنون میشم راهنمایی کنید 💙


ثبت پرسش جدید
Nima Aram
تخصص : a simple full stack
@aramnima50 4 سال پیش آپدیت شد
0

@Mesusjk
اول چک کن ببین products چه مقداری برمیگردونه یا اصلا چیزی هست

return Product.objects.active_products()

اون کد هایی که مربوط به پچینیشن میشه تو html رو بزار احتمالا مشکل برای همونجاست


نسترن احمدی
@Nasiii_2000 2 سال پیش آپدیت شد
0

سلام روز خوش.توی این قسمت با اینکه فایل html داخل فایل فرم موجود در فایل بلاگ هست . برنامه این فایل رو نمی شناسه و ارور میده !
[تصویر\]\[1\]

 تصویر


الیاس سخاوتی نیا
تخصص : علاقه‌مند به برنامه‌‎نویسی
@elyassir 2 سال پیش مطرح شد
0

@Nasiii_2000

سلام
توی پوشه اپ باید یه پوشه به اسم templates بسازین دوباره داخلش یه پوشه به اسم خود اپ و بعدش بقیه ماجرا
یعنی مسیری که اون فایل html شما باید قرار داشته باشه به این صورته

blog/templates/blog/forms/account_form.html

حالا میتونید توی اون تابع render به همون صورتی که آدرس دادین استفاده کنید.
توی settings هم یادتون نره مسیردهی کنین

TEMPLATES = [
...
        'DIRS': [BASE_DIR / 'templates'],
...
]

نسترن احمدی
@Nasiii_2000 2 سال پیش مطرح شد
0

ممنون ازتون


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام