Django Категории с подкатегориями и URL - PullRequest
1 голос
/ 14 сентября 2009

я пытаюсь сделать Категории и Подкатегории, я проверяю это модели но у меня есть эта ошибка:

Truncated incorrect DOUBLE value: 'nacionales'

где "nacionales" является родительской категорией, я знаю, что моя проблема может быть в urls.py, но правда, я не знаю, как установить URL для этого случая ...

my model.py:

# from ...
class Categoria(models.Model):
    titulo = models.CharField(max_length=75, unique=True)
    slug = models.SlugField(max_length=200,unique=True)
    parent = models.ForeignKey('self', blank=True, null=True, related_name='child')

# functions....

my views.py:

# from ... 

def noticias_categoria(request,parent_id,child):
    categoria = get_object_or_404(Categoria,parent=parent_id,slug=child)    
    return object_list(request, queryset=categoria.noticia_set.all(), paginate_by=20,
                       template_name='categorias/categoria_list.html', 
                       extra_context={'categoria':categoria})

моя категория urls.py:

# from ...
url(r'^(?P<parent_id>[-\w]+)/(?P<child>[-\w]+)/$',
                            noticias_categoria,
                            name='noticia_detail'
                            ),

мой url.py:

(r'^categorias/', include('categorias.urls')),

Спасибо, ребята

1 Ответ

2 голосов
/ 14 сентября 2009

Похоже, вы передаете строковое значение родительской категории - nacionales - где функция ожидает числовой идентификатор.

Либо используйте идентификатор для parent_id, либо переименуйте его в parent и напишите первую строку функции следующим образом:

categoria = get_object_or_404(Categoria, parent__titulo=parent, slug=child)  
...