0

Django の auth User モデル クラスを拡張しようとしています。1 つの問題と 1 つの質問があります。これが私のモデルです:

from django.contrib.auth.models import User

class BaseUser(models.Model):
    """
    some common fields
    """

    user = User.ForeignKey(User, unique=True)

    class Meta:
        verbose_name = 'Base User'
        verbose_name_plural = 'Base Users'

User.profile = property(lambda u: BaseUser.objects.get_or_create(user=u)[0])


class Client(BaseUser):
    """
    some client specific fields
    """
    class Meta:
        verbose_name = 'Client'
        verbose_name_plural = 'Clients'


class Owner(BaseUser):
    """
    some owner specific fields
    """

    class Meta:
        verbose_name = 'Owner'
        verbose_name_plural = 'Owners'


class Driver(BaseUser):
    """
    some driver specific fields
    """

    class Meta:
        verbose_name = 'Driver'
        verbose_name_plural : 'Drivers'

私の問題: たとえば、クライアントを確認するために管理サイトにアクセスすると、次のエラーが表示されます (アプリは etaxi_prod と呼ばれます)。

column etaxi_prod_baseuser.id does not exist

ここで何が起こっているのですか?

上記の解決策が見つかった場合の私の質問: クライアント、ドライバー、および所有者のみをユーザー認証クラスとして処理するために、BaseUser クラスを抽象化するにはどうすればよいですか?

4

0 に答える 0