Django импортирует пользовательскую модель пользователя

У меня есть приложение Django с пользовательской моделью пользователя. Я пытаюсь импортировать эту модель в другое приложение. Пока я не могу понять, как это сделать.

Модель пользователя клиента в accounts/models.py является

from django.db import models
from machina.core.db.models import get_model
from django.db.models import Q
from django.contrib.auth.models import Group
# signals imports
from django.dispatch import receiver
from django.db.models.signals import (
    post_save
)

Forum = get_model("forum", "Forum")


class CustomUser(AbstractUser):
    first_name = models.CharField(max_length=250, null=True)
    last_name = models.CharField(max_length=250, null=True)
    age = models.PositiveIntegerField(null=True, blank=True)
    business_name = models.CharField(max_length=250, null=True)
    business_location_state = models.ForeignKey(
        Forum, null=True,  on_delete=models.SET_NULL, limit_choices_to={"lft": 1})
    business_location_county = models.ForeignKey(
        Forum, null=True, on_delete=models.SET_NULL, related_name='county')
    business_location_city = models.CharField(max_length=1024, null=True)
    business_zipcode = models.CharField(max_length=12, null=True)

Код, который я недавно пытался импортировать эту модель, следующий:

from django.db import models
from django.contrib.auth.models import User
from django_tenants.models import DomainMixin, TenantMixin
from django.utils.translation import ugettext as _
from localflavor.us.models import USStateField
from accounts.models import CustomUser


class Tenant(TenantMixin):
    user = models.ForeignKey('CustomUser', on_delete=models.SET_NULL, null=True)
    company_name = models.CharField(max_length=100)
    address_1 = models.CharField(_("address"), max_length=128)
    address_2 = models.CharField(_("address cont'd"), max_length=128, blank=True)
    city = models.CharField(_("city"), max_length=64)
    state = USStateField(_("state"))
    zip_code = models.CharField(_("zip code"), max_length=5)
    created_on = models.DateField(auto_now_add=True)

При попытке запустить сервер я получаю эту ошибку:

django.core.management.base.SystemCheckError: SystemCheckError: System check identified some issues:

ERRORS:
company_accounts.Tenant.user: (fields.E300) Field defines a relation with model 'CustomUser', which is either not installed, or is abstract.
company_accounts.Tenant.user: (fields.E307) The field company_accounts.Tenant.user was declared with a lazy reference to 'company_accounts.customuser', but app 'company_accounts' doesn't provide model 'customuser'.

вы добавляете модель Customuser между кавычками ... просто удалите кавычки вот так :

user = models.ForeignKey(CustomUser, on_delete=models.CASCADE)

и попробуйте еще раз

Вернуться на верх