Подклассы модели категорий Satchmo, но затем появляется ошибка «Объект« Менеджер »не имеет атрибута root_categories» - PullRequest
0 голосов
/ 11 января 2011

Я использую Satchmo как часть веб-сайта, который я сейчас создаю. Сейчас я пытаюсь добавить больше функций в класс Satchmo Category, но, очевидно, я не собираюсь вносить какие-либо изменения в файлы Satchmo. Итак, я подумал, что создание подкласса класса Category даст мне новый класс, который содержит все свойства и методы Satchmo Category, в то же время позволяя мне добавлять свои собственные. Однако, либо подклассы Python не работают так, либо я делаю это неправильно. Вот код, который я использую для подкласса Категория:

from product.models import Category


class MyCategory(Category):
    """ additional functions to pull data from the Satchmo store app """

Один из методов, которые я обычно могу использовать в классе Category:

Category.objects.root_categories()

однако, когда я пытаюсь получить доступ к

MyCategory.objects.root_categories()

Я получаю следующую ошибку:

AttributeError: 'Manager' object has no attribute 'root_categories'

Может кто-нибудь указать мне правильное направление для решения этой проблемы?

1 Ответ

1 голос
/ 11 января 2011

Вы должны прочитать документы на пользовательских менеджерах и наследовании моделей .

В любом случае вам, вероятно, следует определить класс MyCategory как модель прокси , которая действительно наследует Manager родительского класса.

...