zoukankan      html  css  js  c++  java
  • Django day03之表设计分析

    
    models.py文件中创建表字段分析实例:
    图书管理系统--->
    书、作者、出版社作为基表
    
    from django.db import models
    
    # Create your models here.
    #先不要考虑外键关系,先创基表
    class Book(models.Model):
        '''
        书名、价格、出版社、作者
        '''
        title=models.CharField(max_length=32)
        #小数长度总共8位,小数占两位
        price=models.DecimalField(max_digits=8,decimal_places=2)
        #出版社和书是一对多关系,并且书是多的一方,所以外键字段建在书表中,
        publish=models.ForeignKey(to='Publish')
        #to用来指代和哪张表有关系,默认关联的就是表的主键字段
        '''
        一对多外键字段在创建的时候,同步到数据中,表字段会自动加_id后缀
        如果你自己加了_id,我ORM头铁,会在后面再加一个_id,
        所以你在写一对多外键字段的时候,不要自作聪明的加_id。
        
        '''
        #一本书可以有多个作者,一个作者可以有多本书,所以书和作者是多对多的关系,
        # 外间字段建在任意一方都可以,但是建议你建立在查询频率较高的一方。
        author=models.ManyToManyField(to='Author')
        #django  orm 会自动帮你创建书籍和作者的第三张关系表,
        #author这个字段是一个虚拟字段,不会再表中展示出来,仅仅只是起到一个
        #告诉 orm 建第三张表的关系的作用。
    
    class Publish(models.Model):
        '''
        出版社名字、出版社邮箱
        '''
        title=models.CharField(max_length=32)
        email=models.EmailField()
    
    class Author(models.Model):
        '''
        作者名字、作者年龄
        '''
        name=models.CharField(max_length=64)
        age=models.IntegerField()
        #作者表和作者详情表是一对一的表关系,外键字段建在任意一方都可以,
        #但是建议你建在查询频率较高的那一方。
        author_detail=models.OneToOneField(to='Author_detail')
        '''
        一对一的外键字段,创建的时候,同步到数据中,表字段会自动加_id后缀,
        如果你自己加了_id  我orm头铁,在后面再加一个_id,
        所以你在写一对一外键字段的时候,不要自作聪明的加_id 。
        '''
    
    
    class Author_detail(models.Model):
        '''
        作者手机号、作者地址
        '''
        phone=models.BigIntegerField()
        addr=models.CharField(max_length=32)
    
    
    
    
    
    
  • 相关阅读:
    CDN缓存服务器现状,squid、nginx、trafficserver、ATS性能测试
    [钉钉通知系列]Jenkins发布后自动通知
    查税号,税号查询,纳税人识别号查询
    体验万象优图鉴黄服务
    红象云腾
    我眼中的领域驱动设计
    手工DIY:手机变身扫描仪_极客迷
    【CZURET-16】成者科技(CZUR)ET16智能扫描仪OCR文字识别书籍文档票据零边距高速A3A4高拍仪高清1600万像素【行情 报价 价格 评测】-京东
    技术漫谈 | 使用docker-compose进行python开发
    饿了么的 PWA 升级实践
  • 原文地址:https://www.cnblogs.com/ludundun/p/11938203.html
Copyright © 2011-2022 走看看