python - 使 URL 接受可选参数。非捕获

标签 python regex django django-views django-urls

我想让我的网址仅在给定时接受可选参数。我无法将参数设置为可选/非捕获。


re_path(r'^users/(?:(?P<sort_by>\d+)/)?$', views.UserListView.as_view(), name='user_list'),

我希望此网址仅在提供给 View 时接受 slug 字段。我怎样才能做到这一点? 显示错误

Reverse for 'user_list' with keyword arguments '{'sort_by': 'username'}' not found. 1 pattern(s) tried: ['admin/users/(?:(?P<sort_by>\\d+)/)?$']

当我传递 sort_by='username' 时

最佳答案

您可以将您的网址保留为:

re_path(r'^users/$', views.UserListView.as_view(), name='user_list'),

然后在您的模板中使用

   <a href="{% url 'user_list' %}?sort_by=username">Sort</a>

关于python - 使 URL 接受可选参数。非捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57478712/

相关文章:

python - 如何在python中将unicode转换为字典

python - 在列表中查找因子的最有效方法是什么?

python - xmlrpc 服务器的问题

javascript - 如何在 Angular Router UI 中使用非捕获组

Python Django 全局变量

django - 哪个是更好的 django 事件应用程序?

python - Django查询表查找只存在于Parent字段中的Item

java - 在 Java 中使用 RegEx 时出现模式错误

Java 正则表达式 : Get the matched sequence

python - 访问Django的request.body慢