一.分析静态页面   1.静态vs动态 条目 静态页面 动态页面 网站内容 固定不变 经常变动 浏览器加载速度 更快(无需向服务器发起请求) 更慢 改变网站内容 很难(修改或者创建新的html页面) 简单(数据库中添加数据即可) url文件拓展 .htm..html .php..asp..jsp..py 创建语言 HTML PHP.Java.Python   2.本次项目页面分析   a.本项目由5个模块组成分别为:news.course.doc.users.admin   b.在项目根目录下创…
新闻搜索功能实现 一.docker介绍 1.什么是docker? 使用容器让创建.部署.运行应用程序更简单的一个工具 让应用所需的库和依赖环境打包 有一点点像虚拟机 2.为什么使用docker? 3.docker vs vmware(or virtualbox)? 4.docker 架构 Docker platform Docker Engine a server process a client cli a rest api interface Docker architecture Dock…
新闻列表页功能 1.分析 业务处理流程: 判断前端传的标签分类id是否为空,是否为整数.是否超过范围 判断前端传的当前文章页数是否为空,是否为整数.是否超过范围 请求方法:GET url定义:/news/ 请求参数:url路径参数 参数 类型 前端是否必须传 描述 tag_id 整数 是 标签分类id page 整数 是 当前文章页数 向前端返回的数据格式为json格式,返回实例如下: { "data": { "total_pages": 61, "new…
把 视图传到前台的  JsonResponse(data=data) 先进行处理,之后再传到前台, 处理:引用自定义错误代码,把错误代码返回给前台,前台根据错误代码中文提示 class Code: OK = "0" DBERR = "4001" NODATA = "4002" DATAEXIST = "4003" DATAERR = "4004" METHERR = "4005" SMS…
在 user 的应用中的 models.py: 导入 dango 自带的用户模型 from django.contrib.auth.models import AbstractUser,UserManager as _UserManager 在主目录下的配置文件中加入: # 自定义用户模型AUTH_USER_MODEL = 'users.Users' 查看类的结构: 查看类的继承关系, 用户模型设计 : from django.db import models from django.contr…
创建一用户,授予对这个 myblog 库的所有表的权限(.*),在任何 ip 地址中访问(@“%”), 刷新: 退出,用新创建的用户登录,并进入这个库, 在昨天创建的项目中,配置文件中 为了数据库的案例,应该把用户,密码放入文件,在配置文件中引入 手动创建: 在settings.py文件中引入my.cnf文件 配置redis缓存 安装插件: pip install -i https://pypi.douban.com/simple django-redis # 在settings.py文件中指定…
d码云注册,登录, 创建项目: 生成秘钥 想看秘钥: 添加公钥 复制 ssh 连接 通过  git clone <ssh> 连接 在服务器上创建 python3 虚拟环境, 创建项目  pycharm  连接: 用命令创建项目 一.在码云平台创建项目   版本控制的种类: 主要使用github(最主流) 国内访问速度慢 托管私有项目收费 国内一般使用码云gitee 国内访问速度快 托管私有项目免费 公司中使用gitlab或者svn来搭建   创建步骤   ​ a.打开码云 ,注册登录   ​ …
登录,校验: 1,判断用户名输入是否为空, 2,判断用户名密码是否匹配, 3,记住我的功能,:将用户信息记到 session 中 请求方式: POST 在视图中: # 1,创建类# 2,获取前台参数# 3,校验参数# 4,用户登录,设置用户会话信息# 5,返回结果到前台 在主目录下的配置文件中,配置 redis ,存放图片验证码,短信验证码,用户 session 默认用 mysql 存放 # settings.py文件中加入如下内容: CACHES = { "default": { &…
d 发送短信验证码之前,后台要得到三个参数 : 1,用户手机吗,, 2,用户输入的图片验证文本, 3,前台的 uuid , 在60秒内是否有发送短信的记录 只有用户输入的手机号,文本信息与 uudi 的内容对的上,才能发送短信验证码, 在  verificatios 应用中创建的 forms.py 文件中 在 verificatios 应用中的视图文件中导入 forms.py 文件 在视图中设置短信过期时间 # 在verifications目录下的constants.py文件中定义如下常数:#…
判断手机号是否注册功能实现 1.分析 请求方法:GET url定义:/mobiles/(?P<mobile>1[3-9]\d{9})/ 请求参数:url路径参数 参数 类型 前端是否必须传 描述 mobile 字符串 是 用户输入的手机号 2.后端代码实现 # 在verifications目录下的views.py文件中定义如下类视图: class MobileView(View): """ 判断手机号是否存在 """ def get(…
1,用户名     是否已注册 2,手机号 是否被注册 3,图形验证码 4,短信验证码, 5,验证成功后,向后台提交数据:用户名,密码,手机号,短信验证 要写这五个视图, 获取图形验证码,请求方式:get 验证功能单独写在一个 app 中,便于调用 , 点住,拉进 apps 中 在主目录下的配置文件中对 这个 app 进行注册 在这个 app 中,定义个图形验证的类视图, 快速导入 view 用于生成图形验证码的实例 拷贝功能模块到指定目录下, 在视图中导入 用于生成图形验证码 pip inst…
前台代码 // 在static/js/news/index.js文件中 $(function () { // 新闻列表功能 let $newsLi = $(".news-nav ul li"); let iPage = 1; //默认第1页 let iTotalPage = 1; //默认总页数为1 let sCurrentTagId = 0; //默认分类标签为0 let bIsLoadData = true; // 是否正在向后台加载数据 // 加载新闻列表信息 fn_load_c…
tornado 相关说明 新增一个页面,用来做图片收藏, 还要在 account.py 创建一个数据库表,记录用户喜欢的图片,哪些图片用户疯狂传奇 cd 到 项目目录下,执行数据库更新 alembic revision --autogenerate -m "add like" 数据库迁移,alembic upgrade head 为了测试,写个代码给这表添加数据 # -*- coding: utf-8 -*- # 斌彬电脑 # @Time : 2019/2/27 0027 下午 12:…
tornado 相关说明 在 users 表中创建记录,做测试 在项目根目录下创建 test.py # -*- coding: utf-8 -*- # 斌彬电脑 # @Time : 2019/2/27 0027 下午 12:20 from models.db import DBSession from models.account import User # 实例工厂类 session = DBSession() # 实例数据库的类 u = User(name='abc', password='…
tornado 相关说明 在 handlers 中创建个 auth.py 用来做用户登录,在这文件中创建个类,并逐步完善 在 tornado 中创建 login.html 文件,是个登录页面 {% extends 'base.html' %}{% block title %}登录{% end %} {% block content %}<h3>登录首页</h3> <form action="/login" method="post" e…
自定义标签同自定义过渡器一样,要创建文件,在配置文件中以APP方法注册,对方法进注册,在 html 文件中引入,.. 由模板传参 在 在配置文件中改时区: 由视图函数传参 包含标签: 当有这种重复的代码时,我们可用包含标签 第一:新建个 html 文件删掉所有代码,重写个要封装,会重复使用的那段代码, 第二,绑定模板, 绑定模板 带参数的包含标签: 模型: 在虚拟环境 中安装 pymysql 连接配置 另写个连接 mysql DATABASES = { 'default': { 'ENGINE'…
一.首先检查网页中的加载路径是否正确,如果和文件所在路径不一致,就把html改下路径 二.加载路径和文件实际路径一致,看下配置文件: STATIC_URL = '/static/'STATIC_ROOT = os.path.join(BASE_DIR, 'static') 如果还是无法加载,则添加配置(由于系统原因引起的路径错误): STATICFILES_DIRS = ( ('css', os.path.join(STATIC_ROOT, 'css').replace('\\', '/')),…
index.html 首页 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="css/reset.css"> <!--引入本地--> <link rel…
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="css/reset.css"> <link rel="stylesheet&quo…
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="css/reset.css"> <link rel="stylesheet&quo…
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <link rel="stylesheet" href="css/reset.css"> <link rel="stylesheet&quo…
类的定义 共同属性,特征,方法者,可分为一类,并以名命之 class Abc: # class 定义类, 后面接类名 ( 规则 首字母大写 ) cls_name = '这个类的名字是Abc' # 在类里定义的变量 是 属性 print( Abc.cls_name ) Abc.binbin = '正在25班教室' # 可以通过 类名.属性名 = 属性值 给类添加属性 print( Abc.binbin ) ------>>>>> 这个类的名字是Abc 正在25班教室 类是一个独…
从讲项目开始,查找错误,完善笔记,尽可能 翻译没一句代码(以后台为主), 本项目亮点,也是重点 Django ORM中对数据查询的优化(only.defer.select_related) redis缓存短信验证码.图片验证码.用户session 使用docker容器搭建数据集群负载均衡.读写分离 使用django缓存机制 User模型的拓展 数据库的设计能力 数据库的多表关联设计 数据库更新的优化 django信号机制使用 使用celery发送手机短信 自定义用户.用户组以及权限的管理 使用d…
项目部署 稳定,并发,效益, 一.Django配置 1.settings.py配置 复制全局settings.py配置文件,创建一个副本命名为MyBlog/pro_settings.py,修改DEBUG为False. DEBUG = False 将不再提供静态文件服务 # 填写你自己的ip和域名ALLOWED_HOSTS = ["www.youkou.site", "39.108.191.165", "localhost", "127.…
在线课堂 一.数据库模型设计 # 在apps/course/models.py中定义如下模型: from django.db import models from utils.models import ModelBase class Teacher(ModelBase): name = models.CharField(max_length=150, verbose_name="讲师姓名", help_text='讲师姓名') positional_title = models.Ch…
u胎代码实现 : 针对每一个 app 写个 js 脚本, 先给 users 的 app 应用创建个 js:在指定目录下的 js 文件夹下,创建 users 文件夹,下创建 suth.js ,图片验证 // 预加载,html 加载完后再加载 , $(function () { let $img = $(".form-item.captcha-graph-img img"); //获取图像标签元素 let sImageCodeId = "" // uuid (小写 s…
一.Django 现状   1.Django开发前景   1.1 老师做过的项目   ​ 项目图展示:     1.2 Django的厉害之处 在python中,与web开发环境相关的包有13045个 django就占了9091个,大约70% 在python中,活跃的web框架多达54个,其中最活跃的有,Django,Flask,Pyramid,Zope 最受欢迎的就是Django,没有之一 超过5263个中大型网站使用Django开发   1.3 哪些公司在使用Django? 国内:豆瓣.知乎…
验证用户登录: 对一个视图函数进行登录权限验证,(登录后才可以访问,否则重定向到登录页面) #from django.contrib.auth.decorators import login_required # @login_required(login_url='news:login')# def index(request):# return 对一个类视图进行登录权限验证,(登录后才可以访问,否则重定向到登录页面)# @method_decorator(login_reqirde(logi…
g更改标签:,前台要向后台传来 id, name, 对标签进行校验:标签不能为空,标签是否已经存在, 流程: def put(self, request, tag_id): ''' 更改标签 :param request: :return: ''' # 拿到前台传来的参数 try: json_data = request.body if not json_data: return to_json_data(errno=Code.PARAMERR, errmsg=error_map[Code.PA…