在django中使用@ models.permalink装饰器时出现get_abosulute_url问题

时间:2011-04-19 16:29:44

标签: django django-models django-urls permalinks

在为我的某个模型定义get_absolute_url时,使用永久链接装饰器时遇到了一些麻烦,我似乎无法弄清楚!

我正在调用object.get_absolute_url()但是在使用永久链接装饰器时似乎没有返回任何内容。

model.py

@models.permalink
def get_absolute_url(self):
    return ('view_gig', (), {
        'id': self.id,
        'token': self.token})

urls.py

(r'^gigs/(?P<id>[\d+])/(?P<token>[\w+])(/?)', view_gig),

模板

<a href="{{ gig.get_absolute_url }}">View More Info</a>

如果我删除了

@models.permalink

从get_absolute_url()定义返回

('view_gig', (), {'id': self.id, 'token': self.token})

在模板的网址中。

这让我感到疯狂,先谢谢!!

2 个答案:

答案 0 :(得分:1)

我认为您需要使用:

(r'^gigs/(?P<id>\d+)/(?P<token>[\w-]+)(/?)', view_gig),

答案 1 :(得分:1)

如果您尝试(r'^gigs/(?P<id>[\d+])/(?P<token>[\w+])', view_gig),怎么办?