|
|
Всем привет! Решил я, значится, тут попробовать урлы формировать не по старинке, а с помощью декоратора @permalink. Почитал документацию, написал код, код не работает.. Почитал еще раз, погуглил, пошаманил.. Не работает, поэтому пишу сюда )
Вот есть у меня модель, которая из админки джанги должна показывать мне фотку, которую я загрузил (в декоратор я завернул ф-ю get_absolute_url). Вроде все грузится, джанга не ругается. Но когда я нажимаю на просмотр, формируется какая то убогая ссылка, что то вроде http://localhost/admin/r/10/17/ и ошибка Reverse for 'list_detail.object_detail' with arguments '('17',)' and keyword arguments '{}' not found. Кто нить может подсказать что не так? УРЛы from django.conf.urls.defaults import * from photogallery.applications.photoadmin.models import PhotoAlbum, Photo urlpatterns = patterns('django.views.generic', url(r'^photoalbums/(\d+)$', 'list_detail.object_detail'), url(r'^photos/(\d+)$', 'list_detail.object_detail'), ) Модели from django.db import models from django.db.models import permalink from photogallery.settings import MEDIA_ROOT import os class PhotoAlbum(models.Model): title = models.CharField(max_length=100) description = models.TextField() class Meta: ordering = ['title'] def __unicode__(self): return self.title @permalink def get_absolute_url(self): return ('list_detail.object_detail', [str(self.id)]) class Photo(models.Model): item = models.ForeignKey(PhotoAlbum) title = models.CharField(max_length=150) image = models.ImageField(upload_to= 'photos') caption = models.CharField(max_length=250, blank=True) class Meta: ordering = ['caption'] def __unicode__(self): return self.title @permalink def get_absolute_url(self): return ('list_detail.object_detail', [str(self.id)]) |