django 投票教程中的 URL 问题

发布于 2024-08-02 09:47:49 字数 547 浏览 11 评论 0原文

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

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

获得一个简单的向上/向下投票系统我的应用程序。但就像该帖子的第一个评论者一样,urls.py 中的这段代码:

urlpatterns = patterns('',
 url(r'^(?P[-\w]+)/(?Pup|down|clear)vote/?$', vote_on_object, tip_dict, name="tip-voting"),
)

给了我这个错误:

unknown specifier: ?P[

我对正则表达式很糟糕,有人知道如何修复该网址吗?

I'm trying to use the django-voting tutorial from this blog:

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

to get a simple up/down voting system working on an app of mine. But just like the first commenter from that post, this code in urls.py:

urlpatterns = patterns('',
 url(r'^(?P[-\w]+)/(?Pup|down|clear)vote/?

Gives me this error:

unknown specifier: ?P[

I'm terrible w/ regular expressions, anyone have an idea of how to fix that url?

, vote_on_object, tip_dict, name="tip-voting"), )

Gives me this error:

I'm terrible w/ regular expressions, anyone have an idea of how to fix that url?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

披肩女神 2024-08-09 09:47:49

看起来他的博客正在破坏 URL。它可能应该是:

url(r'^(?P<slug>[-\w]+)/(?P<direction>up|down|clear)vote/?

来自 Python 文档 中使用的模式是一个命名的团体:

(?P<名称>...)

与常规括号类似,但分组匹配的子串

可在其余部分访问
通过符号的正则表达式
组名名称。组名称必须是
有效的 Python 标识符,以及每个
组名只能定义一次
在正则表达式中。一个
符号群也是一个编号的
组,就像组不存在一样
命名。所以名为 id 的组在
下面的例子也可以参考
作为编号组 1。

例如,如果模式为 `(?P[a-zA-Z_]\w*)`,则该组可以是

在参数中通过其名称引用
匹配对象的方法,例如
m.group('id')m.end('id'),以及
按正则表达式中的名称
本身(使用 (?P=id))和替换
赋予 .sub() 的文本(使用 \g)。

, vote_on_object, tip_dict, name="tip-voting"),

来自 Python 文档 中使用的模式是一个命名的团体:

(?P<名称>...)

可在其余部分访问
通过符号的正则表达式
组名名称。组名称必须是
有效的 Python 标识符,以及每个
组名只能定义一次
在正则表达式中。一个
符号群也是一个编号的
组,就像组不存在一样
命名。所以名为 id 的组在
下面的例子也可以参考
作为编号组 1。

在参数中通过其名称引用
匹配对象的方法,例如
m.group('id')m.end('id'),以及
按正则表达式中的名称
本身(使用 (?P=id))和替换
赋予 .sub() 的文本(使用 \g)。

Looks like his blog is mangling the URL. It should probably be:

url(r'^(?P<slug>[-\w]+)/(?P<direction>up|down|clear)vote/?

The pattern being used, from the Python docs, is a named group:

(?P<name>...)

Similar to regular parentheses, but the substring matched by the group

is accessible within the rest of the
regular expression via the symbolic
group name name. Group names must be
valid Python identifiers, and each
group name must be defined only once
within a regular expression. A
symbolic group is also a numbered
group, just as if the group were not
named. So the group named id in the
example below can also be referenced
as the numbered group 1.

For example, if the pattern is `(?P<id>[a-zA-Z_]\w*)`, the group can be

referenced by its name in arguments to
methods of match objects, such as
m.group('id') or m.end('id'), and also
by name in the regular expression
itself (using (?P=id)) and replacement
text given to .sub() (using \g<id>).

, vote_on_object, tip_dict, name="tip-voting"),

The pattern being used, from the Python docs, is a named group:

(?P<name>...)

is accessible within the rest of the
regular expression via the symbolic
group name name. Group names must be
valid Python identifiers, and each
group name must be defined only once
within a regular expression. A
symbolic group is also a numbered
group, just as if the group were not
named. So the group named id in the
example below can also be referenced
as the numbered group 1.

referenced by its name in arguments to
methods of match objects, such as
m.group('id') or m.end('id'), and also
by name in the regular expression
itself (using (?P=id)) and replacement
text given to .sub() (using \g<id>).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文