初识 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' %} 加载静态文件,确保配置了静态文件处理器。
相关推荐
bst@微胖子34 分钟前
Python高级语法之selenium
开发语言·python·selenium
wyk123_04636 分钟前
Django 连接(sqlserver)数据库方法
数据库·sqlserver·django
查理零世2 小时前
【蓝桥杯集训·每日一题2025】 AcWing 6118. 蛋糕游戏 python
python·算法·蓝桥杯
魔尔助理顾问3 小时前
一个简洁高效的Flask用户管理示例
后端·python·flask
java1234_小锋3 小时前
一周学会Flask3 Python Web开发-request请求对象与url传参
开发语言·python·flask·flask3
诚信爱国敬业友善6 小时前
常见排序方法的总结归类
开发语言·python·算法
李长渊哦6 小时前
使用Druid连接池优化Spring Boot应用中的数据库连接
数据库·spring boot·后端
斗-匕7 小时前
Spring Boot自动装配:约定大于配置的魔法解密
数据库
架构默片7 小时前
【JAVA工程师从0开始学AI】,第五步:Python类的“七十二变“——当Java的铠甲遇见Python的液态金属
java·开发语言·python
小哥山水之间8 小时前
在 Python 中操作 Excel 文件
开发语言·python·excel