zoukankan      html  css  js  c++  java
  • orm创表 或者手动 自动创表

    1.第一种 Django orm 自动帮我们创建的表

    Create your models here.

    class Book(models.Model):
    name = models.CharField(max_length=32)
    # 第一种自动创建
    # authors = models.ManyToManyField(to='Author')

    class Author(models.Model):
    name = models.CharField(max_length=32)

    2.手动创建第三张表(纯手动确定他们的关系)

    class Book2Author(models.Model):
    # 用ForeignKey传的时候 特点是会自动加上_id 所以只需要写字段名就可以了 _id不需要加 加了就变成_id_id了
    # todo 上面并没有理解
    book = models.ForeignKey(to='Book')
    author = models.ForeignKey(to='Author')
    # 第二种创建方式的优势就是可以在创建之后 再创建一个其他字段
    # 比如下面这一个
    info = models.CharField(max_length=32)

    # 第二种方式好处:这张表 你可以自定义
    # 坏处:不能用orm了
    

    3.第三种半自动创建第三张表

    class Book(models.Model):
    name = models.CharField(max_length=32)
    authors = models.ManyToManyField(to='Author',through='Book2Author')

    class Author(models.Model):
    name = models.CharField(max_length=32)

    class Book2Author(models.Model):
    book = models.ForeignKey(to='Book')
    author = models.ForeignKey(to='Author')
    info = models.CharField(max_length=32)

  • 相关阅读:
    【BZOJ1046】[HAOI2007]上升序列
    【BZOJ1045】[HAOI2008]糖果传递
    【BZOJ1044】[HAOI2008]木棍分割
    【BZOJ1041】[HAOI2008]圆上的整点
    【LG2257】YY的GCD
    【BZOJ1018】[SHOI2008]堵塞的交通
    【LG4735】最大异或和
    【POJ2182】Lost Cows
    【POJ2482】Stars in Your Window
    【POJ1733】Parity game
  • 原文地址:https://www.cnblogs.com/PowerTips/p/11576352.html
Copyright © 2011-2022 走看看