Django url,不同的regex?

2024-05-15 00:29:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我的urlconf:

urlpatterns = patterns('',
    url(r'^$', 'ping.views.services', name='services'),
    url(r'^ajax/status/(?P<id>[-\d]+)', 'ping.views.ajx_status', name='ajx_status'),
    url(r'^ajax/status/(?P<type>[-\w]+)/(?P<id>[-\d]+)(?:\?callback=(?P<callback>[-\w]+)&[_=0-9]+)?$', 'ping.views.ajx_status', name='ajx_status'),
)

链接是:http://127.0.0.1:8000/ajax/status/jsonp/1?callback=jQuery110208076630807481706_1386460596798&_=1386460596799

输出:

^{pr2}$

日志:

^{3}$

“原始”python中的文本:

import re

regex = re.compile(r"^/ajax/status/(?P<type>[-\w]+)/(?P<id>[-\d]+)(?:\?callback=(?P<callback>[-\w]+)&[_=0-9]+)?")

r = regex.search("/ajax/status/jsonp/1?callback=jQuery110208076630807481706_1386460596798&_=1386460596799")

r.groupdict()

{'callback': 'jQuery110208076630807481706_1386460596798', 'type': 'jsonp', 'id': '1'}

google搜索了几个小时,发现Django与python中的url不匹配。你知道怎么它不工作和回叫总是没有?在


Tags: namereidurltypestatusservicecallback
2条回答

在Django url配置中,不需要匹配url中的查询字符串。您可以像request.GET.get('query_string_key')这样查询字符串数据。在

例如:

request.GET.get("page")

urls.py中,您可以编写以下内容:

^{pr2}$

只有URL的路径部分与urlpattern匹配。查询字符串可通过request.GET在视图中找到

相关问题 更多 >

    热门问题