首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >来自django投票教程的代码的URL问题

来自django投票教程的代码的URL问题
EN

Stack Overflow用户
提问于 2009-08-18 20:55:45
回答 1查看 1.4K关注 0票数 1

我正在尝试使用这个博客中的django-voting教程:

http://new.justinlilly.com/blog/2008/nov/04/django-voting-a-brief-tutorial/

在我的一个应用程序上运行一个简单的投票系统。但就像那篇文章的第一个评论者一样,urls.py中的代码如下:

代码语言:javascript
运行
复制
urlpatterns = patterns('',
 url(r'^(?P[-\w]+)/(?Pup|down|clear)vote/?$', vote_on_object, tip_dict, name="tip-voting"),
)

给我这个错误:

代码语言:javascript
运行
复制
unknown specifier: ?P[

我对正则表达式很不在行,谁有办法修复这个url?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-08-18 21:01:08

看起来他的博客弄乱了网址。它可能应该是:

代码语言:javascript
运行
复制
url(r'^(?P<slug>[-\w]+)/(?P<direction>up|down|clear)vote/?$', vote_on_object, tip_dict, name="tip-voting"),

使用的模式来自Python docs,是一个命名组:

(?P<name>...)

类似于常规括号,但组匹配的子字符串

可在正则表达式的其余部分中通过符号组名进行访问。组名必须是有效的Python标识符,并且每个组名在正则表达式中只能定义一次。符号组也是带编号的组,就像没有命名的组一样。因此,下面示例中名为id的组也可以引用为编号为1的组。

例如,如果模式为(?P<id>[a-zA-Z\_]\w\*),则组可以是

在匹配对象的方法(如m.group('id')m.end('id') )的参数中按其名称引用,在正则表达式本身(使用(?P=id))和提供给.sub() (使用\g<id>)的替换文本中也按名称引用。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1296466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档