zoukankan      html  css  js  c++  java
  • Python学习---django多对多自定义第三方表180206

    案例一:

    # version: python3.2.5
    # author: ‘FTL1012‘
    # time: 2018/2/6 16:25
    from django.db import models
    class Book(models.Model):
        name = models.CharField(max_length=33)
    
    
    class Author(models.Model):
        name = models.CharField(max_length=33)
    
    # 自己创建第三张关联表,查询操作数据更加灵活
    # 此时Django内部的多对多已经失效[包括Django多对多的remove,add方法均失效]
    class A_to_B(models.Model):
        bid = models.ForeignKey(Book, on_delete=True)
        aid = models.ForeignKey(Author, on_delete=True)
    
        # 创建联合唯一索引
        class Meta:
            unique_together = (
                ('bid', 'aid'),   # 多个联合索引,可以元组套元组
            )

    案例二:

    # version: python3.2.5
    # author: ‘FTL1012‘
    # time: 2018/2/6 16:25
    from django.db import models
    class Book(models.Model):
        name = models.CharField(max_length=33)
    
    
    class Author(models.Model):
        name = models.CharField(max_length=33)
    
    # 自己创建第三张关联表,查询操作数据更加灵活
    # 此时Django内部的多对多已经失效[包括Django多对多的remove,add方法均失效]
    class A_to_B(models.Model):
        bid = models.ForeignKey(Book, on_delete=True)
        aid = models.ForeignKey(Author, on_delete=True)
    
        # 创建联合唯一索引
        class Meta:
            unique_together = (
                ('bid', 'aid'),   # 多个联合索引,可以元组套元组
            )
    此时,所有的操作都是基于一对多和单表的操作了
  • 相关阅读:
    Linux进程关系
    ambari 卸载脚本
    CentOS-7.2安装Ambari-2.6.1
    MYSQL57密码策略修改
    CentOS7 离线安装MySQL
    centos 安装mysql Package: akonadi-mysql-1.9.2-4.el7.x86_64 (@anaconda)
    mysql 数据备份
    spring-boot-starter-thymeleaf对没有结束符的HTML5标签解析出错
    ssh: scp命令
    python:os.path
  • 原文地址:https://www.cnblogs.com/ftl1012/p/9403817.html
Copyright © 2011-2022 走看看