zoukankan      html  css  js  c++  java
  • 第四章、Django之模型层---创建模型

    第四章、Django之模型层---创建模型

    一、写models.py

    from django.db import models
    
    # Create your models here.
    """
    你在写orm语句的时候 跟你写sql语句一样
    不要想着一次性写完
    写一点查一点看一点
    """
    
    
    
    class Book(models.Model):
        title = models.CharField(max_length=32)
        price = models.DecimalField(max_digits=8,decimal_places=2)
        publish_date = models.DateField(auto_now_add=True)
    
        # 书籍与出版社 是一对多关系
        publish = models.ForeignKey(to='Publish')
        # 书籍与作者 是多对多
        authors = models.ManyToManyField(to='Author')
        """
        authors虚拟字段
            1.告诉orm自动帮你创建第三张关系表
            2.orm查询的时候  能够帮助你更加方便的查询
        """
    
        def __str__(self):
            return self.title
    
    
    class Publish(models.Model):
        name = models.CharField(max_length=32)
        addr = models.CharField(max_length=64)
    
        def __str__(self):
            return self.name
        """return返回的数据必须是字符串类型"""
    
    
    
    class Author(models.Model):
        name = models.CharField(max_length=32)
        age = models.IntegerField()
        # author_detail = models.ForeignKey(unique=True,to='AuthorDetail')
        author_detail = models.OneToOneField(to='AuthorDetail')
    
    
        def __str__(self):
            return self.name
    
    class AuthorDetail(models.Model):
        phone = models.BigIntegerField()
        addr = models.CharField(max_length=64)
    
        def __str__(self):
            return self.addr
    
  • 相关阅读:
    poj 3621(最优比率环)
    bzoj 1497(最大权闭合子图)
    Dinic(模板 再错是不可能的 这辈子都不可能了)
    BZOJ 2038
    zoj 3822(概率dp)
    poj 3683(2-sat+拓扑排序)
    poj 2186(tarjan+缩点)
    hdu 5782(kmp+hash)
    hdu 6035(树形dp)
    Python爬取房屋租售信息
  • 原文地址:https://www.cnblogs.com/demiao/p/11735221.html
Copyright © 2011-2022 走看看