django 一些相关问题】的更多相关文章

Django 模板相关 视图函数只是直接返回文本,而在实际生产环境中其实很少这样用,因为实际的页面大多是带有样式的HTML代码,这可以让浏览器渲染出非常漂亮的页面.目前市面上有非常多的模板系统,其中最知名最好用的就是DTL和Jinja2. DTL是Django Template Language三个单词的缩写,也就是Django自带的模板语言.当然也可以配置Django支持Jinja2等其他模板引擎,但是作为Django内置的模板语言,和Django可以达到无缝衔接而不会产生一些不兼容的情况.因…
这两天在处理django项目时碰到一些问题 1.ur路径设置要忽略大小写,查找了很多资料,都没有发现相关的介绍,最后在谷歌上找到一个解决方案,https://groups.google.com/forum/#!topic/python-cn/DzYrR-d1usI,通过(?i)可以很容易的解决django的url大小写问题 2.从数据库取出来的内容中含有html标签,django模板会自动转义,导致内容输出格式错误,后来发现django模板中有一个可以关闭自动转义的属性, {% autoesca…
一.在django后台admin管理页面添加自己增加的表结构 通过终端命令:python3 manage.py makemigrations, python3 manage.py migrate 我们在Django自带的后台管理页面可以看到Django自动生成表结构,那么要是想成自己的表结构需要这么做: 首先web应用的models.py文件里面配置自己的数据库表,例如下面要建一张UserInfo表,并且用UserInfoAdmin指定后台表详情 : class UserInfo(models.…
Django cookie 的相关操作还是比较简单的 首先是存储cookie #定义设置cookie(储存) def save_cookie(request): #定义回应 response = HttpResponse("存储cookie ok") #定义过期时间 expires = datetime(year=2019,month=11,day=20,hour=15,minute=5,second=0) #转储为django内置时间 expires = make_aware(exp…
配置 模板 TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [ os.path.join(BASE_DIR, 'templates1'), # 根目录->templates1 os.path.join(BASE_DIR, 'templates2'), # 根目录->templates2 ], # 配置render()函数在上述路径下寻找模板 'APP_DIRS': Tru…
1.全局设置 setttings文件 import os import sys # Build paths inside the project like this: os.path.join(BASE_DIR, ...) # 这里用到了python中一个神奇的变量"__file__", 这个变量可以获取到当前文件的路径(含文件名) # 再来一个os.path.dirname()就是获得上一级目录 # "BASE_DIR"就是工程根目录 BASE_DIR = os.…
一般操作 详细请参考官方文档 必知必会13条 <> all(): 查询所有结果 <> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 <> get(**kwargs): 返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误. <> exclude(**kwargs): 它包含了与所给筛选条件不匹配的对象 <> values(*field): 返回一个ValueQueryS…
Models的相关知识 1. AutoField:自增整数类型.根据 ID 自增长的 Int字段 2. IntegerField:整数类型 3. BigIntegerField:大整数类型.用于数值较大时,类似于IntegerField 4. SmallIntegerField:小整数类型.数值的取值范围较小,受限于数据库的限制 5. BooleanField:布尔值(true/false)类型. 6. CharField:字符串类型. 7. CommaSeparatedInterField:存…
一.django-admin的简单回顾: admin: Django的后台数据管理的web版本 1.admin a:models.py - 创建表 b:admin.py - 注册表    admin.site.register(models.UserInfo) c:urls.py - url(r'^admin/', admin.site.urls), PS: 1.动态生成url 2.注册和生成url使用的都是admin.site 二.django-admin的用法 当我们创建登录admin的时候…
目录 1.csrf相关 1.跨站请求伪造 2.跨站请求伪造问题解决 3.crsf中间件 4.csrf装饰FBV的装饰器 5.csrf装饰CBV的装饰器 6.django settings源码刨析 2.auth模块 1.创建超级用户 2.创建用户 3.校验用户名和密码是否正确 4.保存用户登录状态 5.判断当前用户是否登录 6.校验原密码是否正确 7.修改密码 8.注销 9.校验用户登录的登录装饰器 10.auth扩展表 1.csrf相关 1.跨站请求伪造 跨站请求伪造:当用户访问一个网站的时候,…
一般操作 看专业的官网文档,做专业的程序员! 必知必会13条 <1> all(): 查询所有结果 <2> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 <3> get(**kwargs): 返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误. <4> exclude(**kwargs): 它包含了与所给筛选条件不匹配的对象 <5> values(*field): 返回…
前言 前端ajax HTTP请求头 ajax上传文件 jsonp跨域 URL 设计 分发 url参数编码 反向生成url 视图 request对象 POST url信息 视图返回值 HttpResponse JsonResponse shortcuts 返回值响应头和状态设置 CBV cookie与session 自定义404页面 ORM 字段 查询 管理器自带api django提供api(get_object_or_404 与 get_list_or_404) 原生查询 连表查询 用于查询的…
前言 本文,旨在说明python Django如何编写单元测试,从“背景”,“测试要求”,“代码编写”,“如何运行”,“检验测试覆盖度” 这几个方面来说明附上django的官方文档单元测试章节=>这里 背景 python中主要的单元测试框架有以下几种: unittest 标准库,最出名.django中原生自带的单元测试库就是对unittest对封装点击这里=>最基本的unittest的属性讲解和编写思路 Django 的默认测试库是 unittest,使用它时,要写的样板文件比较多. 下面的两…
Ajax简介 AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”.即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML,现在更多使用json数据). 同步交互:客户端发出一个请求后,需要等待服务器响应结束后,才能发出第二个请求: 异步交互:客户端发出一个请求后,无需等待服务器响应结束,就可以发出第二个请求.AJAX除了异步的特点外,还有一个就是:浏览器页面局部刷新:(这一特点…
中间件 django的中间件是一个全局范围内处理django的请求和响应的框架级别的钩子. 作用:对于一个请求到达视图函数的前后进行处理 本质:中间件的本质是一个类,类中定义了特定的方法,Django框架会在特定时间去执行这些方法处理请求. 中间件的五个方法以及四个特征: 五个方法: 1.process_request(self, request) 2.process_response(self, request, response) 3.process_view(self, request,…
常用的QuerySet方法 1.all() 查询表中所有数据,返回一个QuerySet对象列表 2.filter() 查询满足条件的数据,返回一个QuerySet对象列表 3.get() 查询指定的数据(存在且唯一的数据) 查询不到则报错,查询到多条数据也报错 4.order_by("字段") 将查询到的对象列表按照字段排序,默认是升序 "-字段"为降序 多字段排序order_by("字段1", "字段2") 优先按照字段1排…
关于在html文件中使用模板语言时,一些符号的含义 {{}}:显示变量相关,在模板渲染的时候替换成值 {%%}:处理逻辑相关 django模板语言中,对于列表字典等容器类型,不能够通过[ 索引/键值 ]的方式取值. 可以通过点(.)加索引值的方式来取值: i.0  <====> 就是python语法中的 i[0] i.name <====> 就是python语法中的 i[ "name" ] i.keys <====> 就是python语法中的 i.k…
内容 补充: 查看已启动服务的端口 netstat -tulnp |grep (方式1) ss -tulnp|grep (方式2) 前期铺垫: . Linux要能上网 . 掌握Linux软件包安装方法 2.1 rpm包管理 软件包格式:名字-版本-平台-rpm 建议:系统基础包,用光盘里的 光盘挂载(为了安装基础包) 方式1 mount /dev/sr0 /mnt(原始设备) 方式2 mount /dev/cdrom /mnt(软连接) cd /mnt ls 安装包(cd 到mnt下的Packa…
Django session 是存储在数据库中的所以要先跟数据库建立连接 本连接有Django跟数据库建立连接的操作:https://www.cnblogs.com/Niuxingyu/p/10296143.html 存储session,存储成功后会在数据库中的django_session表内 #定义存储session def save_session(request): request.session['username'] = '你好' return HttpResponse('存储成功')…
1. ORM 外键关联查询和多对多关系正反向查询 Class Classes(): name = CF class Student(): name = CF class = FK(to="Classes") class Teacher(): name = CF classes = M2M(to="Classes",related_name="teacher") 简单表结构 # Fk 正向查找 obj = models.Student.object…
from django.shortcuts import render,redirect from django.contrib.auth import authenticate,logout,login from django.contrib.auth.decorators import login_required from django.core.paginator import Paginator,PageNotAnInteger,EmptyPage from django.db.mod…
定义属性 概述: django根据属性的类型确定以下信息 当前选择的数据库支持字段的类型 渲染管理表单时使用的默认html控件 在管理站点最低限度的验证 django会为表增加自动增长的主键列,每个模型只能有一个主键列,如 果使用选项设置某属性为主键列后,则django不会再生成默认的主键列 属性命名限制 遵循标识符规则,且变量不能与Python保留字相同 由于django的查询方式,不允许使用连续的下划线 库 定义属性时,需要字段类型,字段类型被定义在django.db.models.fiel…
首先,在settings.py中加入应用的名称,让数据库知道使用的是哪个应用,然后给那个应用创建表. 在settings.py中配置数据库相关参数,默认使用sqlite3不用配置 编辑models.py文件,逻辑视图构建 在pycharm中的终端通过数据库构建表结构,执行命令: 在index.html中写入一个form表单,用于用户数据提交,还有一个用户信息返回table <!DOCTYPE html> <html lang="en"> <head>…
- 性能相关 user_list = models.UserInfo.objects.all() for row in user_list: # 只去取当前表数据 select_related,主动连表查询[FK] user_list = models.UserInfo.objects.all().select_related('FK字段') for row in user_list: # 只去取当前表数据和FK表关联字段 user_list = models.UserInfo.objects.…
settings """ Django settings for mysite project. Generated by 'django-admin startproject' using Django 1.9.8. For more information on this file, see https://docs.djangoproject.com/en/1.9/topics/settings/ For the full list of settings and th…
1.先进入虚拟环境 pyenv activate virtualenvname. 2.安装django软件包 安装命令: pip install django==1.7 查看安装结果: python -c "import django;print(django.get_version())" 安装uwsgi命令: pip install uwsgi 3.创建一个新工程 django-admin.py startproject blog. 4.运行测试服务器python manage.p…
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/weixin_39726347/article/details/88035356 一.设置缓存 Django支持基于数据库的.文件的和内存的缓存.通常我们首先要对其进行设置.Django关于缓存的设置都位于settings.py中的CACHES配置项中. Django支持下面几种缓存系统: 1. Memcached Memcached是Dja…
Django中提供了“信号调度”,用于在框架执行操作时解耦.通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者. 1.Django内置信号 Model signals pre_init # django的modal执行其构造方法前,自动触发 post_init # django的modal执行其构造方法后,自动触发 pre_save # django的modal对象保存前,自动触发 post_save # django的modal对象保存后,自动触发 pre_delete #…
配置数据库信息 1.settings配置 DATABASES = {     "default": {         "ENGINE": "django.db.backends.mysql",         "NAME": "你的数据库名称",  # 需要自己手动创建数据库         "USER": "数据库用户名",         "PASSW…
django不同版本的路由配置 django 2之前,配置urlpatterns使用的是url方法 django 2之后,配置urlpatterns使用的是path方法 path与url的区别: url()的第一个参数(即需要匹配的路径字符串),能够使用正则表达式 path()的第一个参数,不能够使用正则表达式 但是,django 2之后提供了一种支持正则表达式的路径匹配方法:re_path re_path的使用方法和url一样 路由配置 基本格式: url(正则表达式,views视图,参数,别…