Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
不确定如何正确使用Django模型处理具有额外信息的关系_Django_Django Models - Fatal编程技术网

不确定如何正确使用Django模型处理具有额外信息的关系

不确定如何正确使用Django模型处理具有额外信息的关系,django,django-models,Django,Django Models,我有客户和联系人,每个客户可以有任意数量的联系人,每个联系人可以有任意数量的类型。例如,客户端1可以有两个计费联系人A和B,以及两个业务联系人B和C。 我知道可以使用以下模型对此进行建模: class Client(models.Model): id #primary key #other data class Contact(models.Model): id #primary key #other data class Relationship(model

我有客户和联系人,每个客户可以有任意数量的联系人,每个联系人可以有任意数量的类型。例如,客户端1可以有两个计费联系人A和B,以及两个业务联系人B和C。
我知道可以使用以下模型对此进行建模:

class Client(models.Model):
    id #primary key
    #other data

class Contact(models.Model):
    id #primary key
    #other data

class Relationship(models.Model):
    client_id=ForeignKey(Client)
    contact_id=ForeignKey(Contact)
    type=CharField(max_length=255)#or some other field that represents the type
但这对我来说似乎不正确,因为关系模型并不表示对象,而是表示其他对象之间的关系。我是否需要这样做,或者是否有某种方法来制作模型,使每个模型都能真实地表示对象

但这对我来说似乎不正确,因为关系模型并不表示对象,而是表示其他对象之间的关系

恋爱是头等大事

在一个简单的RDBMS模型中,关系由一个共享密钥暗示(一个是FK,另一个是PK)

但是,当您有多对多关联表时,您将创建一个包含该关系的显式行

您只是在用附加属性丰富关联对象

这很好。事实上,这很常见

这是一个概括:


另外,请阅读以下内容:

谢谢。我看到了,我甚至没有意识到这就是我要找的。