Тема: Імпорт Python
Доброго дня!
Стикнувся з проблемою, вже 2 день не можу нічого придумати. Google не допоміг або я погано шукав
Отож, Є один пакет для Django - https://github.com/ulule/django-badgify (дозволяє робити досягнення користувачів)
Все було чудово, але мені зараз треба розширити їхню модель Badge - https://github.com/ulule/django-badgify#custom-models
Все зробив як пише в доках,
from badgify.models.base.badge import Badge as BaseBadge
class GuidaBadge(BaseBadge):
class Meta(BaseBadge.Meta):
abstract = False
але manage.py shell (чи migrate чи runserver) вибиває помилку:
File "D:\virtenvs\mysite\mysite\main\models.py", line 11, in <module>
from badgify.models.base.badge import Badge as BaseBadge
File "D:\virtenvs\mysite\lib\site-packages\badgify\models\__init__.py", line 8, in <module>
Badge = load_class(settings.BADGE_MODEL)
File "D:\virtenvs\mysite\lib\site-packages\badgify\utils.py", line 88, in load_class
raise exceptions.ImproperlyConfigured(txt)
django.core.exceptions.ImproperlyConfigured: Backend module "main.models" does not define a "GuidaBadge" class.
Тобто це оця помилка- https://github.com/ulule/django-badgify … ils.py#L79
Наскільки я розумію, python не знайшов в main.models класу GuidaBadge.
python зайшов в main\models.py, побачив там
from badgify.models.base.badge import Badge as BaseBadge
далі пішов по тому шляху імпортувати Badge, а там в badgify.models.__init__.py :
Badge = load_class(settings.BADGE_MODEL)
- просять завантажити клас що вказаний в settings - ('main.models.GuidaBadge')
Але pyton ще не виконав коду з main.models і не бачить класу GuidaBadge ?
Правильно я розумію?
PS. Пробував імпортувати функцію (через shell) load_class і вручну передати 'main.models.GuidaBadge' - працює чудово.