2017-12-10 3 views
0

내 앱의 단일 프로필에 여러 로그인 (자격 증명 & 권한)을 사용하고 싶습니다.Django : 단일 프로필에 대해 여러 계정 허용

from django.contrib.auth.models import User 

class Profile(models.Model): 

    user = models.OneToOneField(User, on_delete=models.CASCADE) 

이상적으로, 내가 프로필에 외래 키를 가지고 사용자 모델을하고 싶습니다, 그리고 그것을 것 :

여기에 내 현재 코드입니다. 그런 다음 동일한 프로필에 대해 여러 사용자를 가질 수 있으며 문제가 해결 될 것입니다. 불행히도 사용자 모델을 확장하고 싶지는 않습니다. 프로필 모델에 넣을 수 있기를 바랍니다.

ManyToManyField가 작동하지만 사용자가 여러 프로필을 가질 수는 있지만 불가능합니다.

어떤 종류의 "역방향 외래 키"를 만들 수있는 깨끗하고 간단한 방법이 있습니까?

최고,

+1

이 왜 그렇게 불쾌한 사용자 모델을 확장하고 볼이 프로필 을 공유한다

user.profile_set 

다른 질문을 물어 물어? 이 일을 완전히 실행 가능한 방법으로 보입니다. (즉, 사용자와 중개자로서 프로필에 연결되는 다른 UserSharedProfile 모델 만들기) –

답변

0

우선 사용자 모델을 확장하는 것은 불쾌하지 않습니다. 어쨌든 당신은 매우 일반적인 당신은 단지 몇 가지 다른 사용자 (테이블에 기록)와 사용자 모델

class Profile(models.Model): 
    user = models.ForeignKey(User, models.DO_NOTHING) 

공유 모델 (테이블에 기록)에 외래 키 제약 조건이 필요 이 작업을 수행하는 사용자 모델을 확장 할 필요가 없습니다 개념 데이터베이스 개발. 당신이 당신의 views.py에 문제가있는 경우 다음이 모든 사용자에게 역 접근이 문서는 following relationships backward

+0

불행히도 관리자는이를 인식하지 못하고 드롭 다운에서 하나의 사용자 만 선택할 수 있습니다 멀티 드롭 다운 중. – justinlevol

+0

프로필에 사용자 추가 –

+0

프로필이 제품이고 사용자가 고객이라고 가정 해 보겠습니다. 당신은 여러 고객에게 제품을 판매. –