django - 如何将模态作为 Django 中另一个模态字段的数据类型?
问题描述
在这里,我有卖家模式,其中包含联系人字段。我创建了一个名为 Contact 的新模型名称,其中包含字段 contact_number 和 address。
我可以简单地将卖家模型的联系人字段的外键提供给联系人模型。
但是这里我想使用 Contact 模型作为 Seller 模型的联系字段的新数据类型。
class Contact(models.Model):
contact_number = PhoneNumberField(blank=False, null=False)
address = models.TextField(blank=False, null=False)
def __str__(self):
return "%s" % self.name
class Seller(models.Model):
company_name = models.CharField(max_length=300, blank=False, null=False)
company_profile = models.TextField(blank=False, null=False)
contact = Contact() #Here I want use Contact model as data type for the contact field
def __str__(self):
return "%s" % self.company_name
这可能吗?
如果是的话,任何人都可以请指导我。我是 Django 的新手,我只有 Django 的基本知识。
这里我使用 PostgreSQL 作为数据库。
解决方案
您使用 django 的任何数据库都会处理此问题,如果您使用不同的数据库而不是 sqllite,请按照文档更改设置。
class Contact(models.Model):
contact_number = PhoneNumberField(blank=False, null=False)
address = models.TextField(blank=False, null=False)
def __str__(self):
return "%s" % self.name
class Seller(models.Model):
company_name = models.CharField(max_length=300, blank=False, null=False)
company_profile = models.TextField(blank=False, null=False)
contact = models.Foreignkey(Contact,on_delete=models.CASCADE)
def __str__(self):
return "%s" % self.company_name
一旦通过外键和模型的文档了解更多信息@ https://docs.djangoproject.com/en/2.1/topics/db/examples/many_to_one/
推荐阅读
- android - 如何处理警告:未经检查地调用“ObservableField(T)”作为原始类型“android.databinding.ObservableField”的成员
- node.js - npm 错误!cb() 从未调用过!尝试运行 npm install 命令时出错
- gatsby - 了解 Gatsby 2 页面依赖树
- javascript - 传递给异步库中各个任务的回调的作用
- php - PHP中的字符串文字是否只能以兼容的ASCII超集编码进行编码,例如UTF-8或ISO-8859-1?
- java - Java while-loop 不会在给定命令上停止(初学者程序员)
- android - 将android应用程序连接到服务器并使其运行python程序并从应用程序获取输入?
- java - 如何强制库类在自动装配中使用您的 bean
- php - 如何在 PHP codeigniter 中自动加载 div 内容?
- doctrine-orm - Symfony 学说 DQL 函数给出的通知:别名列名称上的未定义索引