zoukankan      html  css  js  c++  java
  • Django——模型层之字段和字段参数介绍,单表增加,单表查询

    一、字段和字段参数介绍

    class Book(models.Model):
        # 如果不写id,会默认一个id,并且自增
        #primary_key=True  表示该字段是主键,一个表中只能由一个主键
        # id = models.AutoField(primary_key=True)
        # varchar类型,长度,
        # 字段是否可以为空:null=True,可以为空
        # 默认值:default='未知书名',如果没传,默认是它
        # 设置索引:db_index=True 表示该字段是辅助索引
        # 是否唯一:unique=True 表示唯一
        name=models.CharField(max_length=32,null=True,default='未知书名',db_index=True,unique=True)
        # float类型
        # max_digits 最大长度是5  4567.5
        # decimal_places=2 小数点后两位   23.56     999.99
        price=models.DecimalField(max_digits=5,decimal_places=2)
    
        # DateTimeField年月日时分秒
        # auto_now=True  新增,默认使用当前时间
        # auto_now_add=True 修改,设置当前时间
        publish_date=models.DateTimeField(auto_now=True)
    
        publish=models.CharField(max_length=32)

    二、单表增加

    两种方式
    第一种:
        models.Book.objects.create(name='xxx',price=10.34,publish='南京出版社')
    
    第二种:
        book=models.Book(name='yyy',price=11.34,publish='南京出版社')
        book.save()

    三、单表查询(1)

    # 查询名字叫xxx的书
    
    from app01 import models
    def books(request):
        # models.Book.objects.create(name='xxx',price=10.34,publish='南京出版社')
        #
        #
        # book=models.Book(name='yyy',price=11.34,publish='南京出版社')
        # book.save()
    
        # 查询所有
        res=models.Book.objects.all()
        print(res)
        # 查询名字叫xxx的书(是个列表:QuerySet)
        res = models.Book.objects.filter(name='xxx')
        res = models.Book.objects.filter(name='xxx')[0]
        res = models.Book.objects.filter(name='xxx').first()
    
        # 查询名字叫xxx的书(就是book对象),如果没有或者由多个,都报错
        # 查询结果必须有且仅有一个才正常,否则报错
        res=models.Book.objects.get(name='sss')
    
        # 
    
        print(res.name)
        return HttpResponse('两本书保存成功')
  • 相关阅读:
    Windows Phone MultiBinding :Cimbalino Toolkit
    Instant Django 1.5 Application Development Starter
    Writing your first Django
    Python urllib2 proxy
    TED Notes 1 (What leads to success)
    Py2.7 no module named tkinter
    某培训的笔记
    “假学习”和“真学习”[转]
    Selenium学习笔记
    反思之一
  • 原文地址:https://www.cnblogs.com/guojieying/p/13801413.html
Copyright © 2011-2022 走看看