分类目录归档:后端语言

Django商品信息模块


商品信息模块

​ 项目babys的商品模块分为商品列表页和商品详细页,本章分别从页面的业务逻辑和数据渲染的角度深入讲述如何实现网站的商品列表页和商品详细页,并深入分析页面实现过程中所使用的技术要点。

商品列表页的业务逻辑

​ 商品列表页将所有商品以一定的规则排序展示,用户可以从销量、价格、上架时间和收藏数量设置商品的排序方式,并且在页面的左侧设置分类列表,选择某一分类可以筛选出相应的商品信息,网页效果如图7-1所示。

从图7-1可以看到,商品列表页的顶部设有商品搜索功能和导航栏,这部分功能已在模板文件base.html实现了;网页顶部下方划分为3部分:分类列表、排序设置和商品列...

Read more

Django商城的数据渲染与展示


商城的数据渲染与展示

​ Django作为Web框架,需要一种很便利的方法动态地生成HTML网页,因此有了模板这个概念。模板包含所需HTML的部分代码以及一些特殊语法,特殊语法用于描述如何将视图传递的数据动态插入HTML网页中。

​ Django可以配置一个或多个模板引擎(甚至是0个,如前后端分离,Django只提供API接口,无须使用模板引擎),模板引擎有Django模板语言(Django Template Language,DTL)和Jinja2。Django模板语言是Django内置的功能之一,它包含了模板上下文(亦可称为模板变量)、标签和过滤器,各个功能说明如下:

...

Read more

Django商城的数据业务处理


商城的数据业务处理

​ 视图(Views)是Django的MTV架构模式的V部分,主要负责处理用户请求和生成相应的响应内容,然后在页面或其他类型文档中显示。也可以理解为视图是MVC架构里面的C部分(控制器),主要处理功能和业务上的逻辑。我们习惯使用视图函数处理HTTP请求,即在视图里定义def函数,这种方式称为FBV(Function Base Views)。

​ Web开发是一项无聊而且单调的工作,特别是在视图功能编写方面更为显著。为了减少这种痛苦,Django植入了视图类这一功能,该功能封装了视图开发常用的代码,无须编写大量代码即可快速完成数据视图的开发,这种以类的形式实现响...

Read more

一墩难求,用Python画出冰墩墩


import turtle

# 速度
turtle.speed(100)

# 右手
# 提起画笔
turtle.penup()
# 到某个坐标
turtle.goto(177, 112)
# 笔的颜色
turtle.pencolor("lightgray")
# 粗细
turtle.pensize(3)
# 填充色
turtle.fillcolor("white")
turtle.pendown()
# 准备填充
turtle.begin_fill()
# 旋转
turtle.setheading(80)
# 前面表示弧形半径,后面表示圆的弧度...

Read more

Django商城使用QuerySet操作数据


使用QuerySet操作数据

Django对数据库的数据进行增、删、改操作是借助内置ORM框架所提供的API方法实现的,简单来说,ORM框架的数据操作API是在QuerySet类里面定义的,然后由开发者自定义的模型对象调用QuerySet类,从而实现数据操作。

新增数据

Django提供了多种数据新增方法,开发者可以根据实际情况以及个人使用习惯选择某一种新增方式。为了更好地演示数据库的增、删、改操作,在项目babys使用Shell模式(启动命令行和执行脚本)进行讲述,该模式方便开发人员开发和调试程序。在PyCharm的Terminal下开启Shell模式,输入pythonmanage.p...

Read more

Django商城数据模型搭建与使用


商城的数据模型搭建与使用

Django对各种数据库提供了很好的支持,包括PostgreSQL、MySQL、SQLite和Oracle,而且为这些数据库提供了统一的API方法,这些API统称为ORM框架。

通过使用Django内置的ORM框架可以实现数据库连接和读写操作。

ORM框架是一种程序技术,用于实现面向对象编程语言中不同类型系统的数据之间的转换。

从效果上说,它创建了一个可在编程语言中使用的“虚拟对象数据库”,通过对虚拟对象数据库的操作从而实现对目标数据库的操作,虚拟对象数据库与目标数据库是相互对应的。

定义商城的数据模型

我们已设计了项目babys的数据结构,用户信息表是由Dja...

Read more

Django商城URL设置


URL

路由称为URL(Uniform Resource Locator,统一资源定位符),也可以称为URLconf,是对可以从互联网上得到的资源位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的路由,用于指出网站文件的路径位置。简单地说,路由可视为我们常说的网址,每个网址代表不同的网页。

设置路由分发规则

一个完整的路由包含:路由地址、视图函数(或者视图类)、路由变量和路由命名。其中基本的信息必须有:路由地址和视图函数(或者视图类),路由地址即我们常说的网址;

视图函数(或者视图类)即项目应用(App)的views.py文件所定义的函数或类;路由...

Read more

Django数据库设置


创建库

 create database djangoProject1 charset utf8mb4;

安装MySQLClient

pipenv install  mysqlclient

修改settings.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME':'djangoProject1' ,  # 本项目的数据库
        'USER'...

Read more

Django环境搭建


安装虚拟环境

pip install pipenv 

mkdir Django
cd Django

# 创建一个包含Django的Python虚拟环境
pipenv install django

# 在项目目录中进入虚拟环境
pipenv  shell 

# 在虚拟环境中安装MySQLClient用于和MySQL数据进行通信
pipenv install mysqlclient

使用django-admin命令创建项目

# 进入虚拟环境
pipenv shell 
# 创建项目
django-admin   startproject   hello
# 进入项目
cd hel...

Read more

Django商城的设计


商城的设计

网站开发隶属于软件工程,开发流程为:

需求分析 --> 设计说明(细分为概要设计和详细设计)--> 代码编写 --> 程序测试 -->软件交付--> 客户验收--> 后期维护

需求分析

假设我们是一家软件开发公司,公司员工分别有需求工程师、网页设计师、前端工程师、后端工程师和测试工程师,现有一名客户想开发自家的购物平台,该客户拥有实体门店,专售母婴产品。

大多数情况下,客户对网站平台的开发流程只有表面的认知,他们不会提出详细的需求,只会说出他们的目的,比如说“我只想有一个自家的购物平台,能让我的客户在线购买产品,好像淘宝那样就行了。

”...

Read more