【问题标题】:/post/how-to-write-a-pattern-to-accept-this-kind_of_url (In Django)/post/how-to-write-a-pattern-to-accept-this-kind_of_url(在 Django 中)
【发布时间】:2019-12-25 22:24:17
【问题描述】:

我正在尝试实现如下所示的产品 URL:

base_url/product/this-is-sample-of-product-1

网址可以是连字符、下划线、a-zA-Z、0-9 的组合(类似于 wordpress 中的帖子网址)

请帮助,如何在 urls.py - Django 中实现这一点。

我已经在我的 urls.py 中尝试过这段代码,但它不起作用。

url(r'^product/([-\w]+)/$', views.SingleProduct.hello, name='hello' ),

【问题讨论】:

  • 您能否发布到目前为止您尝试过的代码,或者您查看过的任何文档的链接?
  • 你试过什么? Django url 匹配规则只是普通的正则表达式。阅读 Python 正则表达式教程后,您应该能够快速轻松地匹配这些字符。
  • 抱歉,刚刚更新了问题。

标签: python regex django django-urls


【解决方案1】:

我使用模型中的 slug 字段解决了它。

urls.py

  url(r'^(?P<slug>[-\w]+)$', views.SingleProduct.hello, name="hello"),

views.py

  class SingleProduct(APIView):
    def hello( request, slug ):
      return HttpResponse('It works')

【讨论】:

    猜你喜欢
    • 2022-11-20
    • 2022-12-26
    • 2022-12-27
    • 2022-11-20
    • 2022-11-09
    • 2022-12-01
    • 2022-12-16
    • 2022-12-26
    • 2022-11-20
    相关资源
    最近更新 更多