저는 Actor 모델을 사용하여 장고 사용자 모델을 확장하려고하지만 몇 가지 문제가 있습니다.Django OneToOneField 사용자 모델을 확장 할 때 고유하지 않습니다.
내 코드입니다 :
class Actor(models.Model):
usuario = models.OneToOneField('auth.User', unique = True, null = True)
def __str__(self):
return self.usuario.get_full_name() + ' (' + self.usuario.get_username() + ')'
문제는 일대일 관계가 그래서 서로 다른 두 가지 배우를 작성하고 동일한 사용자로 연관 수있는 고유되지 않는 것입니다.
사용 사례 아이디어 : 사용자 (장고의 사용자 모델)를 만든 다음 액터를 만들고 이전에 만든 사용자와 연결합니다. 두 번째 배우를 만들면 같은 사용자와 관련이있을 수 없습니다.
_ 문제는 일대일 관계가 고유하지 않기 때문에 두 개의 서로 다른 배우를 만들 수 있다는 것입니다. _ 그런 다음 일대일 관계를 사용하지 마십시오. 이것이 정확히 의미하는 바입니다. – scharette
_Two differents 관계를 일대일로 제한하려고 시도 할 때 동일한 사용자와 관련된 액터 (이상) (사용자는 배우 및 부사관과 만 관련됨). –
이것이 일대일 관계입니다. 그것은 * 고유 한 *이며, 배우를 둘 이상의 사용자와 관련시킬 수 없습니다. 네가 할 수 있다고 생각하는 게 뭐야? –