قسمت سرچ پروژه ام مشکلی نداشت تا اینکه بعد چندروز دیدم عصن کار نمیکنه و نمیدونم مشکلش کجاست میگه آدرسو پیدا نمیکنه در صورتی که یچ تغییری توش ندادم، همین طور روز به روز داره باگ بهش اضافه میشه الکی
اینم ارورش:
Using the URLconf defined in ArsadEshop.urls, Django tried these URL patterns, in this order:
[name='home']
login
register
logout
products-list [name='products']
products-list/<category_name>
The current path, products-list/search, matched the last one.
در صورتی که url و اینکلود کردم تو پروژه و لیست url های محصولمم اینه:
urlpatterns = [
path("products-list", ProductsList.as_view(), name='products'),
path("products-list/<category_name>", ProductCategoryView.as_view()),
path("products-list/search", SearchProductView.as_view()),
path('products-list/<productId>/<name>', product_detail),
path('products_categories_partial', products_categories_partial, name='products_categories_partial')
]
سلام وقت بخیر
به این دو خط دقت کنید :
path("products-list/<category_name>", ProductCategoryView.as_view())
path("products-list/search", SearchProductView.as_view())
شما url ای تعریف کردید با این عنوان product-list که در خط اول پارامتری گرفته با نام category-name
و در ادامه از همین url استفاده کردید که در ادامه اش serach رو قرار دادید
خب جنگو میاد اون کلمه serach رو یک category-name درنظر میگیره و پیدا نمی کنه چنین ادرسی رو میگه مشکل داره
برای حل این مشکل جای این دو خط رو عوض کنید به این شکل :
path("products-list/search", SearchProductView.as_view())
path("products-list/<category_name>", ProductCategoryView.as_view())
برای اینکه url ها قاطی نشن بهتره برای هر کدوم name هم تعریف کنید
موفق باشید
دم شما گرم درست شد !!!