将结构定义为类属性

时间:2019-07-24 08:55:07

标签: python django

我正在Django项目中定义一个类,并且我希望一个类具有特定的结构。

使用的版本: 的Django2.2.3 python3.7

我考虑过将结构定义为类,然后将其添加为主类的属性。但是恐怕它将创建一个数据库。

这是我尝试过的:

from django.db import models


class Host(models.Model):
    id_host = models.CharField(max_length=20)
    [... more attributes here ...]

class Apartment(models.Model):
    _id = models.CharField(max_length=20)
    host = Host()
    [... more attributes here ...]

关于如何正确执行此操作的任何想法?

编辑: 问题是: 我该如何编码,以便能够定义Host结构而不创建Host DB表,同时能够将Host添加为Apartment属性并确实创建Apartment DB?

1 个答案:

答案 0 :(得分:1)

将自定义属性添加到Django模型类中是完全可以的。它不会在数据库中创建其他字段。请注意,无论如何,将在迁移中管理将在数据库中创建的字段。这样,您可以检查在从模型类中添加或删除属性时将创建哪些字段。