Skr-Eric的Django课堂(三)——Django的模板的继承和模型

2023-11-09 04:51

本文主要是介绍Skr-Eric的Django课堂(三)——Django的模板的继承和模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

模板

1.模板的继承

1.语法

1.在父模板中

必须标识出来哪些内容在子模板中允许被修改

标签:

{% block 块名 %}

.... ....

{% endblock %}

block 的作用:

1.在父模板中没有任何影响,正常显示

2.在子模板中,允许被修改,但如果不做任何修改的话,则会按照父模板的内容进行显示

2.在子模板中

1.指定继承自哪个父模板

{% extends '父模板名称' %}

2.通过 block 标签,改写属于自己的内容

{% block 块名 %}

{% endblock %}

 

2.url()的name参数 - 反向解析

1.url的语法

url(regex,views,kwargs,name)

name:为地址起别名,反向解析时使用

2.反向解析

在模板上做反向解析

1.基本解析

{% url '别名' %}

2.带参的解析

{% url '别名' '参数1' '参数2'%}

在视图上做反向解析

1.基本解析

url = reverse('别名')

url 就是通过别名解析出来的地址

2.带参数的解析

url = reverse('别名',args=(参数1,参数2))

 

模型 - Models

1.什么是模型

根据数据表结构而创建出来的class

 

2.ORM

对象关系映射(Object Relational Mapping)

三大特征:

1.表 到 类的映射

2.数据类型的映射

3.关系映射

 

3.创建 和 配置数据库

1.创建数据库-webdb

create database webdb default charset utf8 collate utf8_general_ci;

2.Django的数据库配置

在 settings.py 中配置数据库的信息

DATABASES = {

'default':{

'ENGINE':'django.db.backends.sqlite3',

'NAME':os.path.join(BASE_DIR,db.sqlite3),

}

}

1.ENGINE:指定要连接的数据库的驱动程序

连接mysql的话可以取值为

'django.db.backends.mysql'

2.NAME:指定要连接到的数据库的名称

连接mysql的话可以取值为

数据库名

3.USER:指定登录到数据库管理系统的用户名

连接到mysql的话 可以为 root

4.PASSWORD:指定登录到数据库管理系统的密码

5.HOST:指定要连接到的主机地址

如果是本机的话:127.0.0.1 或 localhost

6.PORT:指定端口号

mysql的默认为 3306

3.数据库的同步操作

1. ./manage.py makemigrations

作用:将每个应用下的models.py文件生成一个数据库的中间文件,并将中间文件保存到migrations的目录中

2. ./manage.py migrate

作用:将每个应用下的migrations目录中的中间文件同步到数据库中

4.编写Models

1.举个例子

2.Models的语法规范

class ClassName(models.Model):

属性=models.FIELDTYPE(FIELD_OPTIONS)

FIELDTYPE : 字段类型

CharField()

FIELD_OPTIONS : 字段选项(字段说明)

max_length=30

字段类型 :FIELDTYPE

1.BooleanField()

编程语言中使用True 或 False 来表示该列的值

数据库中使用 1 或 0 来表示具体的值

数据类型为:tinyint

2.CharField()

编程语言中使用字符串来表示该列的值

数据库中也是字符串

数据类型为:varchar

注意:必须要指定max_length参数值

3.DateField()

编程语言中使用字符串或Date类型的数据表示该值

数据库中使用的是时间字符串

数据类型为:date

4.DateTimeField()

数据类型为:datetime

5.DecimalField()

编程语言中使用数字(小数)来表示该列的值

数据库使用小数表示

数据类型:decimal

money=models.DecimalField(max_digits=7,decimal_places=2)

6.FloatField()

编程语言中使用数字(小数)来表示该列的值

数据库使用小数

数据类型:float

7.IntegerField()

数据类型:int

8.EmailField()

编程语言中使用字符串来表示一段Email地址

数据库中使用 字符串表示

数据类型:varchar

9.URLField()

编程语言中使用字符串来表示一段网址

数据库中使用 字符串表示

数据类型:varchar

10.ImageFiled()

目的:存储图片路径

数据类型:varchar

image=models.ImageField(upload_to='images/')

 

字段选项 :FIELD_OPTIONS

1.default

作用:为当前字段指定默认值

2.null

作用:指定当前字段是否允许为空,默认为False,不能为空

3.db_index

作用:指定是否为当前字段指定索引

4.db_column

作用:指定当前属性映射到表中的类名,如果不指定则采用属性名称作为类名

 

 

 

想要看更多的课程请微信关注SkrEric的编程课堂

这篇关于Skr-Eric的Django课堂(三)——Django的模板的继承和模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/374048

相关文章

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

如何在本地部署 DeepSeek Janus Pro 文生图大模型

《如何在本地部署DeepSeekJanusPro文生图大模型》DeepSeekJanusPro模型在本地成功部署,支持图片理解和文生图功能,通过Gradio界面进行交互,展示了其强大的多模态处... 目录什么是 Janus Pro1. 安装 conda2. 创建 python 虚拟环境3. 克隆 janus

本地私有化部署DeepSeek模型的详细教程

《本地私有化部署DeepSeek模型的详细教程》DeepSeek模型是一种强大的语言模型,本地私有化部署可以让用户在自己的环境中安全、高效地使用该模型,避免数据传输到外部带来的安全风险,同时也能根据自... 目录一、引言二、环境准备(一)硬件要求(二)软件要求(三)创建虚拟环境三、安装依赖库四、获取 Dee

DeepSeek模型本地部署的详细教程

《DeepSeek模型本地部署的详细教程》DeepSeek作为一款开源且性能强大的大语言模型,提供了灵活的本地部署方案,让用户能够在本地环境中高效运行模型,同时保护数据隐私,在本地成功部署DeepSe... 目录一、环境准备(一)硬件需求(二)软件依赖二、安装Ollama三、下载并部署DeepSeek模型选

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

基于Java实现模板填充Word

《基于Java实现模板填充Word》这篇文章主要为大家详细介绍了如何用Java实现按产品经理提供的Word模板填充数据,并以word或pdf形式导出,有需要的小伙伴可以参考一下... Java实现按模板填充wor编程d本文讲解的需求是:我们需要把数据库中的某些数据按照 产品经理提供的 word模板,把数据