python - 具有三个需要多对多字段的表的 Django 应用程序

标签 python mysql django many-to-many mariadb

我正在开发一个 Django 应用程序,它包含三个单独的表。这三个表是服务器列表、数据库列表和应用程序列表。这些表中的每一个都可以引用其他两个表中的一个或多个对象(例如,一个数据库可以由多个应用程序使用,并且如果出于历史目的而在多个服务器之间传输,则可以引用多个服务器)。如何在 Django 中设置多对多字段(我假设服务器列表有两个 m2m,数据库列表到应用程序列表有一个 m2m,但我一直找不到任何类似的示例)。

最佳答案

也许这就是您所寻找的。

class Server(models.Model):

    """
    model class for server
    """

    databases = models.ManyToManyField('Database',
                                     related_name='server_databases')

    applicaitons = models.ManyToManyField('Applications',
                                         related_name='server_applications')

class Database(models.Model):

    """
    model class for Database
    """

    applications = models.ManyToManyField('Database',
                                     related_name='databases')

class Applicaiton(models.Model):
    """
    model class for application
    """

   #add fields of application model

关于python - 具有三个需要多对多字段的表的 Django 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41184501/

相关文章:

python - 简单滚动平均值 - 前几个值

mysql - 查询处理时间更长..检索数据时出现性能问题

python - 无法在 Windows 7 64 位上使用 django 1.8.2 安装 MySQL 5.5

django - 如何在 Django 的注册表单中添加 2 个模型?

django - docker-compose postgres 自定义数据库详细信息

python - Celery worker 并发

python - 条件变量初始化的pythonic方式是什么?

mysql - 如何在MySQL中交叉两个查询

python - 使用查询集从 Django 获取百万记录很慢

python - 大多数 pythonic 方式尝试,除了,并重试一次