python - 分组匹配错误,django url dispatcher

标签 python regex django url-routing django-urls

我只是想知道是否可以像这样在 django 中创建一个大的 url 模式:

url(r'^/foo('/limit/(?P<limit>\d+)/|/offset/(?P<offset>\d+)/|/limit/(?P<limit>\d+)/offset/(?P<offset>\d+)/|/offset/(?P<offset>\d+)/limit/(?P<limit>\d+)/?$', 'foo', name='foo'),

避免写:

url(r'^/foo/limit/(?P<limit>\d+)/?$', 'foo', name='foo'),
url(r'^/foo/offset/(?P<offset>\d+)/?$', 'foo', name='foo'),
url(r'^/foo/limit/(?P<limit>\d+)/offset/(?P<offset>\d+)/?$', 'foo', name='foo'),
url(r'^/foo//offset/(?P<offset>\d+)/limit/(?P<limit>\d+)/?$', 'foo', name='foo'),

第一个出现分组错误。

我的目标是为每个端点只写一个 url 以加速 django 搜索 url 正则表达式模式,因为如果我写大量的 url 模式需要很多时间,尽管每个端点只写一个 url 会更容易并且制作 limit, offset 可选,但是当我想写 /foo/offset/1/limit/1 我希望能够以任何顺序为参数发出请求(假设我有 7 个参数用于端点......看看这是怎么回事?)

有什么想法或建议吗?

谢谢

最佳答案

在我看到的大多数 REST API 中,“limit”和“offset”(或“start”和“count”)都是查询参数:

https://blog.apigee.com/detail/restful_api_design_can_your_api_give_developers_just_the_information

关于python - 分组匹配错误,django url dispatcher,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20893077/

相关文章:

python - 在 emacs 中使用跳转到定义时出现 "Can' t 打开 __builtin__ 模块“错误

python - Django 为 QuerySet 获取可执行的原始 sql

Python:检查单词列表中的任何单词是否与正则表达式模式列表中的任何模式匹配

asp.net - 在运行时设置RegularExpressionValidator ValidationExpression

python - .order_by() 没有按应有的方式/我期望的方式工作

python - 有什么方法可以告诉 selenium 在某个时候不要执行 js?

python - aiohttp应用进程中监听ZeroMQ

java - Java 中的特殊正则表达式语法

python - Django:使用模型中的 FileField 将文件上传到 REST API

Django ORM : filter by a list of objects