第三百零八节,Django框架,models.py模块,数据库操作——链表结构,一对多.一对一.多对多 链表操作 链表,就是一张表的外键字段,连接另外一张表的主键字段 一对多 models.ForeignKey()外键字段一对多,值是要外键的表类 from __future__ import unicode_literals from django.db import models #导入models对象 class yong_hu_shen_fen(models.Model): #创建用户是否…
Django框架,Views(视图函数),也就是逻辑处理函数里的各种方法与属性 Views(视图函数)逻辑处理,最终是围绕着两个对象实现的 http请求中产生两个核心对象: http请求:HttpRequest对象 http响应:HttpResponse对象 所在位置:django.http 之前我们用到的参数request就是HttpRequest     HttpRequest对象 逻辑处理函数的第一个形式参数,接收到的就是HttpRequest对象,这个对象里封装着用户的各种请求信息,通过…
Django框架介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件.并于2005年7月在BSD许可证下发布. 这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的. 更多Django框架 http://code.ziqiangxuetang.com/django/django-qrcode.ht…
第三百零九节,Django框架,models.py模块,数据库操作——F()和Q()运算符:|或者.&并且 F()可以将数据库里的数字类型的数据,转换为可以数字类型 首先要导入 from django.db.models import F from django.shortcuts import render from app1.models import * #导入数据库操作模块 from django.db.models import F #导入F类 #逻辑处理模块 def special(…
第四百零五节,centos7下搭建sentry错误日志服务器,接收python以及Django错误, 注意:版本,不然会报错 Docker >=1.11Compose >1.6.0 通过docker安装sentry 安装docker 1.卸载旧版本 sudo yum remove docker \ docker-common \ docker-selinux \ docker-engine 2.安装依赖包 sudo yum install -y yum-utils device-mapper-…
第三百九十五节,Django+Xadmin打造上线标准的在线教育平台—Xadmin集成富文本框 首先安装DjangoUeditor3模块 Ueditor HTML编辑器是百度开源的HTML编辑器 下载地址 https://github.com/andyzsf/DjangoUeditor3 下载后解压下载包,找到DjangoUeditor3-master\DjangoUeditor文件夹  将DjangoUeditor文件夹,整个文件夹复制到Xadmin同级目录 安装好后在settings.py将…
Django框架,urls.py模块,views.py模块,路由映射与路由分发以及逻辑处理——url控制器 这一节主讲url控制器 一.urls.py模块 这个模块是配置路由映射的模块,当用户访问一个url地址时,通过这个路由映射模块,映射给对应的逻辑处理函数 urlpatterns等于的一个列表,列表里的一个元素就是一条路由映射 urlpatterns路由映射配置方式 参数说明: 一个正则表达式字符串一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串可选的要传递给视图函数的默认参…
Django框架,models.py模块,数据库操作——表类容的增删改查 增加数据 create()方法,增加数据 save()方法,写入数据 第一种方式 表类名称(字段=值) 需要save()方法,写入数据 from django.shortcuts import render from app1.models import * #导入数据库操作模块 #逻辑处理模块 def special(request): a = yhubiao(anem=') #第一种添加数据,实例化表类,在实例化里传参…
Django框架,models.py模块,数据库操作——创建表.数据类型.索引.admin后台,补充Django目录说明以及全局配置文件配置 数据库配置 django默认支持sqlite,mysql, oracle,postgresql数据库. 1,django默认使用sqlite的数据库,默认自带sqlite的数据库驱动   引擎名称:django.db.backends.sqlite3 在全局配置文件settings.py可以看到确认配置使用的sqlite数据库 # Database # h…
jQuery EasyUI,Messager(消息窗口)组件 学习要点: 1.加载方式 2.属性列表 3.方法列表 本节课重点了解 EasyUI 中 Messager(消息窗口)组件的使用方法,这个组件依赖于 Window(窗口)组件.progressbar(进度条)组件. 一.加载方式 消息窗口提供了不同的消息框风格,包含 alert(警告框).confirm(确认框). prompt(提示框).progress(进度框)等.所有消息框都是异步的,用户可以在交互消息之 后使用回调函数去处理结果…
一 路由系统 URL 1 url(r'^index/',views.index) url(r'^home/', views.Home.as_view()) 2 url(r'^detail-(\d+).html',views.detail),#动态路由 views.py def detail(request,nid) url(r'^detail-(\d+)_(\d+).html',views.detail),#动态路由 def detail(request,nid,uid) 3 url(r'^de…
JavaScript正则表达式 学习要点: 1.什么是正则表达式 2.创建正则表达式 3.获取控制 4.常用的正则 假设用户需要在HTML表单中填写姓名.地址.出生日期等.那么在将表单提交到服务器进一步处理前,JavaScript程序会检查表单以确认用户确实输入了信息并且这些信息是符合要求的. 一.什么是正则表达式 正则表达式(regular expression)是一个描述字符模式的对象.ECMAScript的RegExp类表示正则表达式,而String和RegExp都定义了使用正则表达式进行…
今天去E世界拿抽的奖品,白去了 一趟,结果已经被拿过去了,明天还得去另一个地拿,太折腾了,今天走了1万4千多步. 哎,徐斌啊,出去见个面,这个折腾啊,受不了,想干他.开个玩笑. 黄东月,为什么打字莫名打了个结婚呢, 不太正常,话少了好多,是不是没戏了. 睡觉吧.…
python操作redis缓存-管道.发布订阅 一.管道 redis-py默认在执行每次请求都会创建(连接池申请连接)和断开(归还连接池)一次连接操作,如果想要在一次请求中指定多个命令,则可以使用pipline实现一次请求指定多个命令,并且默认情况下一次pipline 是原子性操作. pipeline(transaction=True)transaction=True将多个操作组合成原子性操作,也就是一个整体,有一个操作失败,意味着全部失败,数据回滚 pipe.execute()执行原子性操作…
第三百二十一节,Django框架,发送邮件 全局配置settings.py EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' #发送邮件引擎 EMAIL_USE_TLS = False #是否以https方式 EMAIL_HOST = 'smtp.163.com' #邮件smtp服务器 EMAIL_PORT = 25 #端口 EMAIL_HOST_USER = '15284816568@163.com' #发件人 EMAI…
第三百二十节,Django框架,生成二维码 用Python来生成二维码,需要qrcode模块,qrcode模块依赖Image 模块,所以首先安装这两个模块 生成二维码保存图片在本地 import qrcode img = qrcode.make('http://www.jxiou.com') # img <qrcode.image.pil.PilImage object at 0x1044ed9d0> with open('test.png', 'wb') as f: img.save(f)…
第三百一十五节,Django框架,CSRF跨站请求伪造  全局CSRF 如果要启用防止CSRF跨站请求伪造,就需要在中间件开启CSRF #中间件 MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', # 'django.mi…
第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本  uwsgi-2.0.15nginx-1.12.1 1.用Navicat Premium远程登录Linux系统数据库,创建网站需要的数据库 2.数据库创建好后,将开发环境的数据库传输到刚才创建的数据库 传输数据 如果在传输数据时,怎么都传输不了,老报错误,有可能是传输数据太大,要在软件设置一下,改一个变量,将参数…
第三百九十六节,Django+Xadmin打造上线标准的在线教育平台—其他插件使用说,自定义列表页上传插件 设置后台列表页面字段统计 在当前APP里的adminx.py文件里的数据表管理器里设置 aggregate_fields = {'字段名称':'sum为统计数,min为统计时间'} class CourseAdmin(object): # 自定义数据表管理器类 # 设置xadmin后台显示字段 list_display = ['name', 'desc', 'detail', 'degre…
第四百零六节,自定义用户表类来继承Django的用户表类, models.py from django.db import models # Create your models here. from django.db import models from django.contrib.auth.models import AbstractUser # django自带的用户表类 class Userpro(AbstractUser): # 继承django自带的用户表类 nick_name…
第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块 virtualenv简介 1.安装virtualenv [root@192 huan_jing]# pip3 install virtualenv Collecting virtualenv Downloading virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB) 100% |██████████████…
第三百九十九节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装mysql5.6 1.检测系统是否已经安装过mysql或其依赖,若已装过要先将其删除,否则第4步使用yum安装时会报错: [root@192 ~]# yum list installed | grep mysql mysql-libs.x86_64 5.1.71-1.el6 @anaconda-CentOS-201311272149.x86_64/6.5 [root@192 ~]# 2.删除已…
第三百九十七节,Django+Xadmin打造上线标准的在线教育平台—其他插件使用说,主题本地化设置 主题设置是在xadmin\plugins\themes.py这个文件 默认xadmin是通过下面这个json文件来动态加载的.所以我们可以到它加载的json文件里下载好主题 themes.py修改方式 #coding:utf-8 from __future__ import print_function import httplib2 from django.template import lo…
第三百九十四节,Django+Xadmin打造上线标准的在线教育平台—Xadmin后台进阶开发配置2,以及目录结构说明 设置后台列表页面可以直接修改字段内容 在当前APP里的adminx.py文件里的数据表管理器里设置 list_editable = ['可以修改的字段','可以修改的字段'] class UsersAdmin(object): # 自定义用户信息数据表管理器类 # 设置xadmin后台显示字段 list_display = ['username', 'password', 'n…
第三百九十一节,Django+Xadmin打造上线标准的在线教育平台—404,403,500页面配置 路由映射在全局也就是根目录里的urls.py里配置404路由映射 注意:不是写在urlpatterns列表里,而是独立写 handler404 = '404逻辑函数'函数需要从app路径开始 # 全局404页面配置 handler404 = 'app_users.views.pzhi404' 逻辑函数 可以写在任意一个app的views.py文件里 render_to_response('设置要…
第三百八十七节,Django+Xadmin打造上线标准的在线教育平台—网站上传资源的配置与显示 首先了解一下static静态文件与上传资源的区别,static静态文件里面一般防止的我们网站样式的文件,包括ccs,js,网站样式图片 上传资源是用户操作上传的图片等资源 上传资源的配置 1,首先在项目里创建一个名称叫media的文件夹专门保存用户上传 2,settings.py文件配置上传资源的路径 # 上传资源路径,如果图片,上传文件等 MEDIA_URL = '/media/' # 设置上传资源…
第三百八十一节,Django+Xadmin打造上线标准的在线教育平台—xadmin全局配置 1.xadmin主题设置 要使用xadmin主题,需要在一个app下的adminx.py后台注册文件里,写一个主题管理器绑定xadmin的views.BaseAdminView注册一般我们会在用户相关的app下的adminx.py后台注册文件里写 #!/usr/bin/env python # -*- coding:utf8 -*- import xadmin from xadmin import vie…
第三百八十节,Django+Xadmin打造上线标准的在线教育平台—将所有app下的models数据库表注册到xadmin后台管理 将一个app下的models数据库表注册到xadmin后台管理 重点:xadmin的数据表注册,是到app下查找的adminx文件,所以我们必须在app下创建一个adminx.py文件,所有关于数据表注册到xadmin后台的代码都是写在adminx.py文件里 adminx.py文件编写 1.自定义一个类来继承object对象,这个类叫做数据表管理器 数据表管理器里…
第三百七十七节,Django+Xadmin打造上线标准的在线教育平台—apps目录建立,以及数据表生成 apps目录建立 我们创建一个apps目录,将所有的app放到apps目录里去,这样方便管理,也使目录更清楚,不管有多少app都统一到apps目录里去 设置python可以识别apps目录路径 注意:我们在创建app后,python会自动到paa文件夹中找到相应的文件运行,当我们移动app到apps文件夹后,python程序将无法找到相应的文件了, 当我们移动app到apps文件夹后,此时我们…
第三百七十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现我的搜索以及热门 我的搜素简单实现原理我们可以用js来实现,首先用js获取到输入的搜索词设置一个数组里存放搜素词,判断搜索词在数组里是否存在如果存在删除原来的词,重新将新词放在数组最前面如果不存在直接将新词放在数组最前面即可,然后循环数组显示结果即可 热门搜索实现原理,当用户搜索一个词时,可以保存到数据库,然后记录搜索次数,利用redis缓存搜索次数最到的词,过一段时间更新…