当前路径search_shop / 5ka /与任何这些都不匹配。 Django

时间:2020-06-24 14:33:38

标签: python django

我有一个错误:

当前路径search_shop / 5ka /与任何这些都不匹配。

造成此问题的原因是子域5ka的名称。当我将名称从5ka更改为pka时,它可以正常工作。

如何正确使用5ka

models.py

class Shop(models.Model):
    title = models.CharField(max_length=200)
    image = models.ImageField(blank=True)
    slug = models.SlugField(null=False, default="Shop") # I mean this field

def get_search_url(self):
    return reverse('search_shop', kwargs={'slug': self.slug})

urls.py

urlpatterns = [
    path('', HomePageView.as_view(), name='main_list'),
    path('search/', SearchResultsView.as_view(), name='search_results'),
    path('search_shop/<slug:slug>', ProductListView.as_view(), name='search_shop'),
    path('search_shop_results/<slug:slug>/', ProductSearchResultsView.as_view(), name='search_shop_results'),
    path('<slug:slug>/<int:pk>/', views.product_detail, name='product_detail'),

    path('shops/', ShopListView.as_view(), name='shop_list'),
]

shop_list.html

{% for shop in shops %}   
    <a href="{{ shop.get_search_url }}"

1 个答案:

答案 0 :(得分:1)

只要在下面的行中包含/,它将被解决

path('search_shop/<slug:slug>/', ProductListView.as_view(), name='search_shop'),