我需要一个"created_ by";子用户模型中的字段,该字段将显示创建翻译器帐户的用户(is_Translator=True(。
用户型号:
class User(AbstractUser):
is_client = models.BooleanField('Client status', default=False)
is_translator = models.BooleanField('Translator status', default=False)
子用户:
class Translator(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True)
您创建了一个额外的ForeignKey
[Django doc]:
class Translator(models.Model):
user = models.OneToOneField(
User,
on_delete=models.CASCADE,
limit_choices_to={'is_translator': True}
primary_key=True
)
created_by= models.ForeignKey(
User,
on_delete=models.CASCADE,
related_name='created_translators'
)
在创建Translator
的视图中,需要使用登录用户(request.user
(填写created_by
字段。
注意:通常使用
settings.AUTH_USER_MODEL
[Django-doc]来引用用户模型比直接使用User
模型[Django-dc]更好。有关更多信息,请参阅文档中引用User
模型的部分。