自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 Flask 框架(六)— Restful、PostMan工具

1.RestfulRestful API 是用于在前端与后台进行通信的一套规范,它可以通过一套统一的接口为所有客户端提供 web 服务,实现前后端分离,节省开发时间。Restful API 由后台也就是 SERVER 来提供前端来调用。前端调用 API 向后台发起 HTTP 请求 ,后台响应请求将处理结果反馈给前端。也就是说 Restful 是典型的基于 HTTP 的协议 。Restful API 有以下的设计原则和规范:(1) 资源:首先是弄清楚资源的概念。资源就是网络上的一个实体,一段文本,

2022-01-09 15:58:56 553

原创 Flask 框架(五)— 蓝图、类视图、Flask_login、Flask-Migrate

1.蓝图在学习过 Django 后,我们了解到 Django 中的 app 主要作用就是将 Django 项目划分成一个个单独的 app 模块,然后将所有 app 分配不同的处理功能,通过路由分配将它们连接成一个大的Django 项目,而在 Flask 中的蓝图与 Django 中的 app 有异曲同工之妙。下面我们大致来了解一下 Flask 的蓝图,首先创建一个主的路由配置文件 app.py,该文件主要的作用就是启动整个的 Flask 框架;from flask import Flask

2022-01-09 09:41:03 1073

原创 Flask 框架(四)— 表单处理

1.表单处理 Web 表单是 Web 应用程序的基本功能,它是 HTML 页面中负责数据采集的部件。通常情况下,表单有三个部分组成,分别是表单标签、表单域、表单按钮。表单允许用户输入数据,负责HTML页面数据采集,通过表单将用户输入的数据提交给服务器。 下面...

2022-01-09 09:39:14 1047

原创 Flask 框架(三)— Jinja2模板

Flask 中的一些基本使用,如:语句控制、传递变量等与 Django 框架有异曲同工之妙,这里就不一 一 讲解了,下面对宏和过滤器两个知识点进行说明。1.宏在 Flask 中,若要渲染模板,则需要使用如下函数:# 用于渲染模板文件。函数中的第 1 个参数是模板的文件名,后面的参数都是键值对,# 表示模板中变量对应的真实值。render_template(name, **context) 类似于 Python 中的函数,宏的作用就是在模板中避免重复利用代码而导致代码冗余。Jin..

2022-01-06 19:51:10 226

原创 Flask 框架(二)— cookie与session、钩子请求和上下文对象

本文继续对 Flask 框架进行说明,下面通过一些小案例来讲解 cookie、session、请求钩子与上下文对象,其中 cookie 与 session 的用法与 django 框架中是一样的。1.cookie 与 session(1)处理 cookie在 django 中我们了解到 cookie 是以文本形式存储在计算机客户端上的,在 flask 中也是一样的,下面我们通过处理 cookie 来进行说明;import jsonfrom flask import Flask, requ

2022-01-06 10:26:19 391

原创 Flask 框架(一)— 视图、request对象

在前面学习了 Django 框架之后,接着学习 Flask 框架。相对于 Django 来说,Flask 属于轻量级的 Web 框架,Django 被认为是"大而全"的重量级 Web 框架,其自带大量的常用工具和组件;和Django 不同的是 Flask 轻巧、简洁,可通过第三方拓展来实现具体的功能。Flask 的两个主要核心应用是 Werkzeug (Werkzeug 是一个 WSGI 工具包,web 框架的底层库)和模板引擎 Jinja2。Flask 框架属 Python 第三方库,使用前须进行..

2022-01-05 23:08:27 323

原创 Django项目:极致果蔬(五)

根据上篇所学的内容,在“极致果蔬”项目中添加全文检索的功能。搜索功能分为两部分:一是用户输入后下拉显示提示商品信息;二是用户点击搜索后会跳到搜索结果页面。1.安装 python 全文索引包pip install django-haystack==2.7.0 -i https://pypi.tuna.tsinghua.edu.cn/simple pip install whoosh -i https://pypi.tuna.tsinghua.edu.cn/simple pip install j

2022-01-05 19:26:23 396

原创 Django 单元测试、全文检索

1.Django 单元测试Django 框架自带单元测试工具,在 Django 框架创建的应用中默认有一个用于单元测试的 test.py 文件,我们将单元测试代码写在test.py文件中。(1)编写一个简单的测试案例from django.test import TestCase # Create your tests here. def add(a,b): return a + b if __name__ == '__main__': c = add(1,2..

2022-01-04 16:19:08 678

原创 Django项目:极致果蔬(四)

本文继续完成项目的内容,下面完成的是用户浏览记录。1.用户浏览记录 在本项目中,当用户每次浏览商品详情时,会向后台发送请求,此时可携带商品ID,然后在Redis数据库中进行存储信息,此时可缓存用户ID和浏览商品的ID,并以浏览商品时间先后顺序进行排序,就可以实现存储用户浏览历史记录。 此外,我们可以使用Redis数据库的列表来存储商品浏览记录,以用户ID 为key,分别存入商品信息,添加商品历史浏览记录时,用户最新浏览的商品的id从列表左侧默认插入。 首先,创建一个超级管理员,在...

2022-01-02 22:46:41 294

原创 Django项目:极致果蔬(三)

接着上篇,我们继续来完成项目。我们知道项目中的前端页面会有很多重复性的代码,为了方便后期的维护,我们使用模板继承的方法来抽象父模板文件。1.抽象父模板文件 首先抽离出所有页面的基类页面文件、有无购物车字样基类页面文件、详情与列表页基类页面以及用户中心涉及到的3个基类文件;(1)基类页面文件 base.html{# 商品首页、商品详情页、商品列表页、注册页面、登录页面 #}<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitio..

2022-01-01 23:48:02 401

原创 Dajngo项目:极致果蔬(二)

上篇讲述了用户注册部分的处理,下面继续完善项目的用户登录部分,登录用户的基本流程如下: 继续上篇的项目,我们打开服务器访问登录页面,发现没有样式,这是因为login.html中没有加载static的一些js和css文件,这时需要修改这部分信息即可。接下来就对用户登录部分的一些重要的知识点进行总结。1.判断登录逻辑 在项目中,Django提供两个函数authenticate()、login()...

2021-12-31 18:23:51 761

原创 Django项目:极致果蔬(一)

作为一个Python的Web项目,其整体的开发流程大致如下: 在这个项目中,我们划分为4个模块,分别是用户模块、商品模块、购物车模块和订单模块。对于整体项目的架构可分为3块,分别是前端开发、后台开发和其他技术,这里的前端开发就不进行说明了,直接用之前已设计好的。1.数据库设计 在进行数据库设计前,先来对电商项目中的两个概念 SPU 和 SKU 进行了解。(1)SPU 和 SKU 的区别 这里用个简单的例子来说明:你想要一台...

2021-12-30 10:41:27 337 1

原创 实现注册和登录功能(2)

继续上次的项目:实现注册和登录功能 — Session、Cookie_m0_54143674的博客-优快云博客接下来为项目添加邮件发送功能、celery异步处理及用户激活。1.发送邮件 下面以QQ邮箱进行说明; (1)配置邮箱 首先需要打开QQ邮箱,点击设置 -> 帐户 ,在新页面中找到“开启服务”,勾选“开启”,填写完手机验证码后,获取到生成的授权码(授权码需要记录下来)。(2)发邮件到邮箱 Django框架在django.c...

2021-12-28 20:11:45 346

原创 Redis 高级

对于这一部分,我们通过发布订阅、主从配置这两部分来进行说明。1.发布订阅(1)订阅频道 基本命令如下:SUBSCRIBE channel [channel2 ...] # 订阅给定的一个或多个频道的信息。 首先,在下列案例中创建订阅频道,名称为my_test: (2)发布消息 基本命令如下:PUBSUB subcommand [argument [argument2 ...]] # 查看订阅与...

2021-12-27 19:43:56 446

原创 Redis之数据操作

Redis 是一个开源的使用 ANSI C 语言编写、遵循 BSD 协议、支持网络、可基于内存且可持久化的日志型、以 Key-Value 形式高性能存储数据的数据库,并提供了多种语言的 API。Redis 支持5种数据类型,下面分别对各个数据类型进行简单的说明;首先记住一些简单的Redis命令:# 若要启动 Redis 客户端,则可直接使用如下命令(在本地):redis-cli# 若要在远程服务上启动,需要在 redis-cli 命令后添加连接的 IP 与端口号:redis-cli -h

2021-12-27 15:46:57 542

原创 Django网站部署

1.安装django 可通过以下两种方式来安装django(二择一即可):sudo pip3 install django==1.11.28 sudo pip3 install -i https://pypi.douban.com/simple/ django==1.11.28 安装过程可能会碰到以下的错误:

2021-12-26 18:49:33 2051

原创 Uwsgi配置

本文主要介绍如何在虚拟机Ubuntu/VMware上部署简单的WSGI应用。在前几次的python学习中,我们了解到浏览器到服务器之间的请求与响应过程如下:我们在前几次的python学习中了解到,浏览器以Http协议发送信息到服务器中,由于Django不认识Http需要runserver来解析Http为Django认识的WSGI,再运用至路由、视图及模板中;这里返回时,是从视图返回到runserver处时又将WSGI转换为Http发送至浏览器。这里的“runserver”起到一个“翻译官”的..

2021-12-23 21:09:26 842

原创 博客项目(2)

1.富文本编辑器这里继续上篇的项目搭建,article应用处的content(文章简介)用的是文本类型,我们在此采用富文本编辑器可方便后台进行文章或详情编辑,也可以在文章中插入图片或链接,下面举例进行简单的说明;(1)安装与配置 首先在PyCharm中安装富文本编辑器tinymce;pip install django-tinymce 在settings的INSTALLED_APPS中引入tinymce并添加tinymce的默认配置;INSTALL...

2021-12-23 10:41:59 297

原创 实现注册和登录功能 — Session、Cookie

这里利用所学习到的Session和Cookie的知识来实现注册和登录的功能。1.创建项目和应用(1)创建数据库 首先在Navicat中创建sc_user库,再在settings.py中修改数据库;DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'sc_user', 'USER':'root', 'PASSW...

2021-12-23 00:57:57 1574

原创 Django常用技术 — 中间件

1.中间件 中间件是一个底层的插件系统,可以介入Django的请求和响应处理过程,并用于修改Django的输入和输出。Django在中间件中预置了五个方法,区别在于不同的阶段执行;# 方法一:初始化方法,用于确定是否启用了当前中间件 def __init__(self): pass# 方法二:处理请求前调用 def process_request(self, request): pass# 方法三:处理视图前调用 def process_view(s..

2021-12-22 19:23:33 538 1

原创 博客项目的环境搭建(1)— Git

1.下载与安装 Git 首先需要下载该软件,官网下载如下:https://git-scm.com/download/win; 安装时只需要“傻瓜式”地点击“Next”即可安装成功; 2.PyCharm中配置 Git 打开PyCharm后,选中File-->Settings,在Settings中输入Git,点击Git并配置好路径(该路径在刚刚安装Git路径中的bin/git.exe文件; 完成上述操作后,则...

2021-12-21 20:51:36 551

原创 Django 常用技术

1.静态处理 下面通过一个简要案例来了解静态文件的基本使用。 首先,在webtest/settings.py文件中定义静态文件存放的物理目录;# 静态资源的访问路径STATIC_URL = '/static/'# 配置静态资源的放置目录STATICFILES_DIRS = [os.path.join(BASE_DIR,"static"),] 接着在项目根目录下创建static目录,再创建images、css、js目录,并在images中保存一张照片; ...

2021-12-20 20:33:10 848

原创 Django之模板

模板分为静态部分和动态部分,其中动态部分主要就是模板语言,下面通过模板变量、标签、过滤器、注释几个方面进行说明。1.模板变量 首先打开book/views.py文件,创建一个test_book()视图函数(这里创建一个类进行调用);class Test_book: def __init__(self): pass def pfunc(self): return "hello"def test_book(request): tb..

2021-12-16 21:03:46 1225

原创 Django — HttpRequest对象、HttpResponse对象

QueryDict对象定义在django.http.QueryDict中,一般地,request对象的属性GET、POST都是QueryDict类型的对象,QueryDict类型的对象可用于处理同一个键并带有多个值的情况。下面对GET属性与POST属性进行说明。1.GET属性 下面通过创建一个testget.html与视图来说明,getone()用于接收一键一值,getmany()用于接收 一键多值。 首先,创建testget()视图函数;def t...

2021-12-16 12:57:13 918

原创 Django之视图

通过之前学习的内容先创建一个项目webtest以及book应用进行下面说明。视图是一个简单的 Python 函数,它接受 Web 请求并且返回 Web 响应。使用视图,主要在定义视图、配置URL两方面进行操作。1.使用视图的过程(1)定义视图 首先,在webtest/book/views.py文件中定义一个视图函数;from django.shortcuts import render# Create your views here.def index(reque...

2021-12-15 20:36:09 652

原创 ORM语法—查询操作

以下函数的使用,通过进入Python脚本(python manage.py shell)进行测试。1.字段查询(1)get()函数:返回表中满足条件的一条且只能有一条数据。>>> from book.models import BookInfo>>> book = BookInfo.objects.get(id=2)>>> book.bname(2)all()函数:返回模型类对应表格中的所有数据。>>> fr

2021-12-15 17:51:23 742

原创 Django模型 — 图书信息

通过之前的学习内容,我们以“图书-作者”模型类为例,这里就直接简述案例数据的设计和生成:首先创建一个名为webtest的项目与一个名为book的应用程序,接着配置并连接MySQL数据库、创建一个数据库dbtest,最后在数据库中直接添加数据即可。1.图书信息显示 首先,找到webtest/webtest目录下的urls.py文件,添加book应用程序的路由;from django.conf.urls import url,includefrom django.contrib impo..

2021-12-15 13:52:00 612

原创 Django基础 — 元选项

下面是对Django模型的知识进行扩展,在上篇所创建的“电脑-厂家”模型的基础上进行说明。1.db_table选项 在模型类中定义类Meta,可用于设置元信息,如在myweb/myapp/models.py文件中指定 Computer模型类生成数据表名为computerinfo、FactoryInfo模型类生成数据表名为factory,则需要添加如下代码:# 自定义电脑类class Computer(models.Model): .... ...

2021-12-14 19:46:09 298

原创 Django框架入门(二)

继续上篇的内容,接着通过ORM框架、设计模型来对模型这一知识点有个基本的掌握。1.ORM框架 简要的一个映射关系,如图所示:2.设计模型案例在上篇的基础上修改数据库为mysql数据库; (1)安装pymysql;Pip install pymysql (2)配置mysqldb,在项目主目录下的__init__.py中配置mysqldb;import pymysqlpymsyql.install_as_MySQLdb() (3)...

2021-12-14 10:24:06 809

原创 Django框架入门

Django是一个为Python语言定制的框架,采用了MVT的框架模式 ;下面通过创建项目、开启服务器等几个方面来掌握Django程序的基本知识点。1.创建第一个Django程序首先创建项目myweb,创建后的manage.py文件可以与Django项目及进行交互;diango-admin startproject myweb 然后,开启服务器,命令如下:cd mywebpython manage.py runserver# 若要修改端口号,命令如下# python ma...

2021-12-13 21:39:54 345

原创 使用wsgiref模块编写python框架

最近学习了有关WSGI规则,遵循这一规则来编写一个Python框架----使用wsgiref模块。1.wsgiref模块创建服务 响应动态请求。from wsgiref import simple_server def hello_app(environ,start_reponse): # 在 start_response 中传入响应状态行 - 响应头 start_reponse('200 OK',[('Content-type','text/html')]) ..

2021-12-12 22:29:24 532

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除