python - 在 Django View 中省略一个参数?

标签 python regex django django-views url-pattern

urls.py urlpatterns中我有这样的声明:

url(r'^product-(\d+)-([a-zA-Z_]+)$', 'product', name="product"),

正则表达式中的第二组是 View 中不需要的 SEO 名称。

我认为:

def product(request, product_id, suffix):

但我既不需要也不使用后缀。它仅用于 SEO。

有什么办法可以去掉这个参数吗?

最佳答案

删除 SEO 名称周围的括号:

url(r'^product-(\d+)-[a-zA-Z_]+$', 'product', name="product"),

现在该模式将不会被捕获并传递到您的 View 。

如果需要分组,请使用非捕获组 ((?:...) 而不是 (...) ):

url(r'^product-(\d+)-(?:[a-zA-Z_]+)$', 'product', name="product"),

关于python - 在 Django View 中省略一个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18811283/

相关文章:

python - 如何将 unicode 转换为 4 位二进制表示形式?

python - 我正在测试线程。我制作的这个小游戏中的时间,但它不断重叠

java - 模式与正则表达式不匹配

python - 带有模式引用的正则表达式子

python - Python 3-optparse-发生错误时如何更改返回值

python - fill_between 和 fill_betweenx matplotlib 的区别

c# - 我想使用正则表达式选择以某个字母开头

python - Django:RelatedManager 对象是如何实例化的?

python - Django 迁移删除字段

django - 是否可以在多个级别上预取相关?