初识 Django

声明

适用于想要快速入门的开发者,有前后端开发以及语言基础,想要学习语法或者特性。

想要学会快速开发,快速入门,请看博客【实用向】Django 框架入门并结合本篇文章。

命令

命令 描述
startproject 创建一个 Django 项目
startapp 创建一个 Django 应用
check 校验项目完整性
runserver 本地简易运行 Django 项目
shell 进入 Django 项目的 PythonShell 环境
test 执行 Django 用例测试
数据库命令 描述
makemigrations 创建模型变更的迁移文件
migrate 执行上一个命令创建的迁移文件
dumpdata 把数据库数据导出到文件
loaddata 把文件数据导入到数据库

目录

文件名称 描述
settings.py 项目配置文件
urls.py 项目路由配置文件
manage.py 项目管理文件

项目和应用

Django 项目

  • 定义:一个 Django 项目是基于 Django 框架构建的 Web 应用。
  • 组成 :项目包含一组配置若干个 Django 应用。

Django 应用

  • 定义 :一个 Django 应用是一个可重用的 Python 软件包
  • 功能 :每个应用可以独立管理以下组件:
    • 模型(Models):定义数据结构。
    • 视图(Views):处理用户请求和响应。
    • 模板(Templates):设计页面布局和展示。
    • 路由(URLs):定义 URL 到视图的映射。
    • 静态文件(Static Files):存储 CSS、JavaScript 和图片等静态资源。

Django 应用目录介绍

文件名 用途描述
views.py 视图处理的地方,负责处理用户请求和响应。
models.py 定义应用模型的地方,用于定义数据结构。
admin.py 定义 Admin 模块管理对象的地方,用于后台管理。
apps.py 声明应用的地方,用于配置应用级别的设置。
tests.py 编写应用测试用例的地方,用于测试应用功能。
urls.py (自行创建)管理应用路由的地方,用于定义 URL 到视图的映射。

模型层

模型层位于 Django 视图层和数据库之间用于 Python 对象和数据库表之间转换

为什么需要模型层

  • 屏蔽不同数据库之间的差异
  • 开发者更加专注于业务逻辑的开发
  • 提供很多便捷工具有助开发

模型字段

类型名称 数据类型 描述
数字类型 IntegerField 用于存储整数。
文本类型 TextField 用于存储大量文本。
短文本类型 CharField 存储短文本需要设置 max_length
日期类型 DateTimeField 用于存储日期和时间。
自增 ID AutoField 自动递增的字段,常用于主键。
主键定义 primary_key 属性 定义模型中的字段作为主键。

初识 Django Shell

PythonShell,用于交互式的 Python 编程。DjangoShell 也类似,继承 Django 项目环境

为什么需要 DjangoShell

  • 临时性操作使用 DjangoShell 更加方便
  • 小范围 Debug 更简单,不需要运行整个项目来测试
  • 方便开发、方便调试、方便 Debug

初识 Django Admin

Django 的后台管理工具

读取定义的模型元数据,提供强大的管理使用页面

为什么需要 DjangoAdmin 模块

  • DjangoShell 新增文章太复杂了
  • 管理页面是基础设施中重要的部分
  • 认证用户、显示管理模型、校验输入等功能类似

初识 Bootstrap

来自美国 Twitter 的前端框架

提供非常多的控件并附带源码

栅格系统把页面均分为十二等份

初识 模板系统

基本语法

类型 示例和用法
变量 使用双花括号 {``{ }} 输出变量值,如 {``{ variable }}
标签 使用单花括号和百分号 {% %} 实现控制流和逻辑,如 {% for item in list %} ... {% endfor %}{% if condition %} ... {% endif %}
注释 使用 {# #} 进行注释,如 {# this is a comment #}
过滤器 在变量输出中使用过滤器修改显示内容,例如 `{``{ variable
模板继承 使用 {% extends "base.html" %} 声明模板继承关系,通过 {% block %} 定义和填充块内容。
静态文件 使用 {% static 'path/to/file.css' %} 加载静态文件,确保配置了静态文件处理器。
相关推荐
浊酒南街38 分钟前
决策树python实现代码1
python·算法·决策树
Hello.Reader42 分钟前
Redis大Key问题全解析
数据库·redis·bootstrap
FreedomLeo12 小时前
Python机器学习笔记(十三、k均值聚类)
python·机器学习·kmeans·聚类
星光樱梦2 小时前
32. 线程、进程与协程
python
阿正的梦工坊2 小时前
深入理解 PyTorch 的 view() 函数:以多头注意力机制(Multi-Head Attention)为例 (中英双语)
人工智能·pytorch·python
西猫雷婶2 小时前
python学opencv|读取图像(十九)使用cv2.rectangle()绘制矩形
开发语言·python·opencv
靖顺3 小时前
【OceanBase 诊断调优】—— packet fly cost too much time 的根因分析
数据库·oceanbase
liuxin334455663 小时前
学籍管理系统:实现教育管理现代化
java·开发语言·前端·数据库·安全
海绵波波1073 小时前
flask后端开发(10):问答平台项目结构搭建
后端·python·flask
赵谨言3 小时前
基于python网络爬虫的搜索引擎设计
爬虫·python·搜索引擎