zoukankan      html  css  js  c++  java
  • Django的模型与字段

    Django的模型,包含字段field和操作方法,每个模型在数据库中映射为一张表。

    基本原则:

    1. 每个model在django中是一个Python类
    2. 每个model都是django.db.models.Model的子类
    3. model的每个字段代表数据表中的某一列数据
    4. django自动生成访问数据库的API

    通常我们将模型编写在model.py下。

    创建了模型之后,在使用它之前,要先在settings文件中的INSTALLED_APPS 处,注册models.py文件所在的app

    每次对模型做了增删改操作之后,要执行数据库同步操作

    python manage.py makemigrations
    python manage.py migrate

    字段Field

    字段体现为Python中的一个类,反映在数据表上是一个列。命名字段不可使用cleansavedelete等Django内置的模型API名字,也不能使用双下划綫,因这是Django内置的一种查询字段的方法。

    Django的字段都是继承自django.db.models,也可以自定义。通常命名用驼峰命名法,如AutoField。

    常用字段类型:

    CharField:字符串类型,必须接收一个max_length参数

    DateField:class DateField(auto_now=False, auto_now_add=False, **options)日期类型。一个Python中的datetime.date的实例。两个重要参数:(参数互斥,不能共存) auto_now:每当对象被保存时将字段设为当前日期,常用于保存最后修改时间。auto_now_add:每当对象被创建时,设为当前日期,常用于保存创建日期(注意,它是不可修改的)。

    EmailField:邮箱验证字段,默认max_length最大长度254位

    ImageField:图片类型字段

    FileField:上传文件字段,class FileField(upload_to=None, max_length=100, **options)。

    IntegerField:整数类型,最常用的字段之一。取值范围-2147483648到2147483647

     TextField:大量文本内容,在HTML中表现为Textarea标签,最常用的字段类型之一!如果你为它设置一个max_length参数,那么在前端页面中会受到输入字符数量限制,然而在模型和数据库层面却不受影响。只有CharField才能同时作用于两者。

  • 相关阅读:
    .Net Core DI依赖注入:一个接口注入多个实现类(转载)
    单表千万行数据库 LIKE 搜索优化手记(链接)
    Do the JSON keys have to be surrounded by quotes?(转载)
    梳理情绪解决问题
    MYSQL主从数据库同步备份配置的方法
    VMware ESXI 6.5 安装及配置
    linux centos7 完整邮件服务器搭建及调用_2018_lcf
    利用Tampermonkey(油猴)+ IDM 实现百度云盘大文件下载(IDM安装教程)
    Java中使用feign遇到的坑
    微服务为什么要有服务发现与注册?
  • 原文地址:https://www.cnblogs.com/dion-90/p/8367598.html
Copyright © 2011-2022 走看看