2017-11-28 15 views
0

나는 내 자신을 위해 만든이 문제를 해결하기 위해 고생하고있다.djangomodel의 한 필드에 대해 두 개의 외래 키

필자는이 두 고객 모델을 비슷하거나 다른 분야로 사용하고 있습니다. 이 두 중 하나를 내 projectclass의 필드에 ForeignKey로 지정해야합니다.

사용자가 프로젝트를 만들면 사용자는 모든 고객을 선택하고 해당 필드에 대해 비공개 및 회사 고객 모두를 지정할 수 있지만 사전에 고객을 지정하지 않아도됩니다.

개인 고객

class PrivateCustomer(models.Model): 
    .. fields 

회사 고객

class CompanyCustomer(models.Model): 
    ... 

프로젝트

class Project(models.Model): 
    customer = model.ForeignKey(PrivateCustomer,CompanyCustomer) 

인스턴스가 발생할 때 I는 즉시 해당 특정 필드에 대한 두 가지의 결합을 할 수 아니면 두 고객 클래스 사이에 분리를 놓고이를 처리해야합니까? UI 입력? 귀하의 의견에서

class Project(models.Model): 
    privateCustomer = models.ForeignKey(PrivateCustomer, null = True) 
    companyCustomer = models.ForeignKey(CompanyCustomer , null = True) 

그리고 진정한 조건 널 (null)과 두 필드를 = 문제에 대해, 당신은 쉽게 처리 할 수있는 방법

답변

0

.

+0

감사합니다. 예, 최상의 솔루션 인 것 같습니다. – Alexander