Может быть, я что-то упускаю, но в соответствии с django docs (1.2), я настроил свои модели URL-адресов точно так, как указано, чтобы убедиться, что я не хард-кодирую URL, возвращаемые для get_absolute_url.иметь:
в urls.py
urlpatterns = patterns('django.views.generic.list_detail',
url(r'^$','object_list',
{ 'queryset': product.objects.all(),
'template_name': 'products/list.html',
},
name='product_list'),
url(r'^(?P<slug>[-\w]+)/$','object_detail',
{ 'queryset': product.objects.all(),
'template_name': 'products/detail.html',
},
name='product_detail'),
)
в models.py
@models.permalink
def get_absolute_url(self):
return ('product_detail', (), {'slug': str(self.slug)})
Метод возвращает пустую строку в шаблонах и из оболочки даетошибка.
NoReverseMatch: Reverse for 'product_detail' with arguments '()' and keyword arguments '{'slug': 'dd-d--'}' not found.
Это должно разрешиться, если это не так, поскольку urls.py имеет имя: product_detail ?