顾乔芝士网

持续更新的前后端开发技术栈

一文讲清Python Django网络编程知识

摘要:Python 是一种功能强大且易于学习的编程语言,广泛应用于数据分析、人工智能、Web页面开发等领域。Django 是一个基于Python的功能强大,非常高效的 Web 开发框架,采用 MTV 架构模式(模型-模板-视图),帮助开发者快速构建网站应用。文章详细讲解了 Django 的工作原理和关键技术,如Mysql数据库操作、模板渲染、URL 路由、表单处理和后台管理等知识。并通过一个完整的电商网站开发实例,展示了如何使用 Django 实现商品展示、购物车、订单管理和用户中心等常见功能,覆盖了从模型定义、数据库操作到前端展示的完整开发流程。既适合基础学习,也可助力开发者快速构建功能完善的 Web 项目。

详细内容请查看下文。

一、登录Linux

1.访问Linux系统

2.查看Python和Django版本信息

二、Django是什么

1. Python Django的概念

说明:Django 是一个基于 Python 的高级 Web 框架,专为快速开发功能强大、结构清晰的网站而设计。它内置了大量常用功能(如数据库操作、用户认证、后台管理等),让开发者可以专注于系统的业务逻辑,而不用重复编写各种组件。

2.怎么安装Python Flask

前提:确保电脑已经安装了 Python3版本。

然后执行指令# pip3 install django 安装Django框架。

三、Django有什么用

1.Django与Flask的异同

说明:Django与Flask的重点不同,如果想要做一个电商网站、社交媒体或管理系统,Django 是首选;如果是想做一个小型网站或微服务,Flask 可能更合适。

2. Django 的核心架构

说明:Django 使用的是 MTV 架构模式(Model-Template-View),与常见的 MVC 模式(Model-View-Controller)类似但略有不同。

3. Django 的工作原理

说明:当用户发起请求时,Django 根据 URL 找到对应的视图函数处理请求和业务逻辑,视图函数通过模型与数据库交互获取数据,然后将数据传递给模板生成最终的网页返回给用户。

4. Django 的核心技术

说明:Django 的核心技术概括为通过内置的 ORM(对象关系映射)轻松处理数据库,使用模板引擎动态生成网页内容,借助 URL 路由系统高效管理页面请求,以及提供强大的表单处理和用户认证功能,从而简化了Web开发流程。

(1) ORM(对象关系映射)

说明:ORM 让开发者无需编写复杂的SQL语句,而是通过 Python 对象来操作数据库。

比如:通过语句products = Product.objects.all() 获取所有商品

(2)模板系统(Template)

说明:Django 提供了强大的模板语言,可以嵌入变量、条件判断、循环等。

比如:通过语句<h1>{{ product.name }}</h1> 获取商品名称

(3)表单处理(Form)

说明:Django 可以自动验证表单数据,并生成 HTML 输入框。

比如:通过下述语句可以以表单的形式查商品的名称、价格和详情。

class ProductForm(forms.ModelForm):

class Meta:

model = Product

fields = ['name', 'price', 'description']

(4) URL 路由(URL Dispatcher)

说明:Django通过 urls.py 配置 URL 与视图的对应关系。

比如:可以通过以下语句配置 URL与视图的关系。

urlpatterns = [

path('products/', views.product_list, name='product_list'),

]

(5)管理后台(Admin)

说明:Django 自带一个后台管理系统,只需注册模型即可进行增删改查。

比如:可以通过语句admin.site.register(Product) 注册商品信息。

四、使用Django开发一个简单易用的电商网站

说明:本项目的电商网站应该包含以下四个主要的功能模块,分别为

商品展示、购物车管理、订单提交和用户中心。

1.新建电商项目ecommerce

(1)执行指令django-admin startproject ecommerce新建电商项目

(2)执行以下指令新建电商项目的应用

2.查看电商项目ecommerce的目录结构

3.编写主要文件代码

(1)编写ecommerce/settings.py代码

(2)编写ecommerce/urls.py代码

(3)编写products/models.py代码

(4)编写products/views.py代码

(5)编写
templates/products/list.html页面

(6)编写cart/models.py代码

(7)编写cart/views.py代码

(8)编写cart/urls.py代码

(9)编写templates/cart/cart.html页面

(10)编写orders/models.py代码

(11)编写orders/views.py代码

(12)编写orders/urls.py代码

(13)编写
templates/orders/order_success.html页面

(14)编写users/views.py代码

(15)编写orders/urls.py代码

(16)编写
templates/users/profile.html页面

4.运行商店网站

(1)更改数据库

说明:将项目的默认数据库由SQLite更改为Mysql。

  • 安装 MySQL 驱动

说明:Django 默认不支持直接连接 MySQL,需要安装驱动程序。推荐使用 mysqlclient。

  • 使用Mysql客户端工具(如 phpMyAdmin、Navicat 等)访问Mysql数据库,执行以下语句创建ecommerce_db数据库,同时创建访问账号ecommerce_user。
  • 修改 Django 项目的数据库配置

说明:编辑Django 项目的 settings.py 文件,找到 DATABASES 配置项,如下图

并将其替换为如下内容:

  • 删除旧的 SQLite 数据库文件和迁移记录

说明:为了防止冲突,建议执行指令rm -rf db.sqlite3清除旧的 SQLite 数据,同时执行指令find . -path "*/migrations/*.py" -not -name "__init__.py" -delete清理每个应用下的迁移文件(保留 __init__.py)。

  • 创建管理员账号

(2)服务端运行系统

(3)客户端访问系统

  • 客户端输入地址访问,如下图
  • 点击【后台管理】,查看后台管理页面
  • 点击【商品列表】,查看商品列表页面
  • 点击【购物车】,查看购物车页面
  • 点击【订单中心】,查看订单页面
  • 点击【用户中心】,查看用户页面
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言