django第5天

虚拟环境安装

'''
1.通过pip3安装虚拟环境:
-- pip3 install virtualenv
2.前往目标文件夹:
-- cd 目标文件夹 (C:\Virtualenv)
3.创建纯净虚拟环境:
-- virtualenv 虚拟环境名 (py3-env1)
了解:创建非纯净环境:
-- virtualenv-clone 本地环境 虚拟环境名
4.终端启动虚拟环境:
-- cd py3-env1\Scripts
-- activate
5.进入虚拟环境下的python开发环境
-- python3
6.关闭虚拟环境:
-- deactivate
7.PyCharm的开发配置
添加:创建项目 -> Project Interpreter -> Existing interpreter -> Virtualenv Environment | System Interpreter -> 目标路径下的python.exe
删除:Setting -> Project -> Project Interpreter -> Show All

伪静态的SEO优化

动态页面:数据内容会发生变化的页面
静态页面:数据内容不会发生变化的页面
针对SEO(搜索引擎优化),静态页面更容易被搜索引擎网站收录
如http://127.0.0.1:8888/index/delete1.html会认为是用固定的html显示的页面(也就是静态页面)
伪静态就是将动态页面伪装成静态页面,容易被搜索引擎网站收录,从而增加搜索概率,提高流量
路由层:
url(r'^article/(?P<id>(\d+)).html/$',views.article,name = 'article')
视图函数层:
def article(request,id):
return render(request,'article.html',{'id':id})
模板层:
index.html
<a href="{% url 'article' 1 %}">第一篇文章</a>
<a href="{% url 'article' 2 %}">第二篇文章</a>
<a href="{% url 'article' 3 %}">第三篇文章</a> article.html
<h1>第{{ id }}篇文章</h1> 执行顺序:
①点击127.0.0.1:8888 进入主页
②点击a标签进入对应的url路径,参数传给了视图函数,视图函数又将参数传给了模板

request对象

1.method:请求方式
2.get请求的参数:GET
3.post请求的参数(本质是从body中取出来):POST
4.body:post提交的数据(不能直接查看)
5.path:请求的路径,不带参数
6.request.get_full_path():请求路径,带参数
7.FILES:文件数据
8.encoding:编码格式
9.META:数据大汇总的字典

FBV与CBV

FBV:function base views 函数方式完成视图响应
CBV:class base views 类方式完成视图响应
视图层:
from django.views import View
from django.shortcuts import HttpResponse class Cbvview(View):
def get(self,request):
return HttpResponse("响应get请求")
def post(self,request):
return HttpResponse("响应post请求")V 路由层:
url('^path/$',views.Cbvview.as_view()) get方法返回get请求的结果
post方法返回post请求的结果

文件上传

模板
<form action='/path/' methode = 'post' enctype = 'multipart/form-data'>#enctype传送二进制数据
{% csrf_token%}
<input type = 'file' name = 'files' multiple>#multiple支持多文件上传
<input type = 'submit' value = "上传">
</form> 视图函数:
files = request.FILES.getlist('files')
for file in files:
with open(file.name,'wb')as f:
for line in file:
f.write(line)

django第五天(虚拟环境安装和视图层相关)的更多相关文章

  1. Django框架之第四篇(视图层)--HttpRequest对象、HttpResponse对象、JsonResponse、CBV和FBV、文件上传

    视图层 一.视图函数 一个视图函数,简称视图,是一个简单的python函数,它接收web请求并且会返回web响应.响应可以是一张网页的html,一个重定向,或者是一张图片...任何东西都可以.无论是什 ...

  2. 虚拟环境与django版本与视图层相关知识

    目录 虚拟环境 django版本区别 视图函数返回值 JsonResponse对象 form表单上传文件 request方法 FBV与CBV CBV源码剖析 模板语法传值 传值方式 传值范围 虚拟环境 ...

  3. Django drf:视图层封装、ViewSetMixin、路由配置、解析器、响应器

    一.视图层封装 二.ViewSetMixin 三.路由配置 四.解析器 五.响应器 一.视图层封装 1.基本视图 写一个出版社的增删改查resfull接口 路由: url(r'^publish/$', ...

  4. Django视图层、虚拟环境

    一.虚拟环境安装 目的:为了解决版本共存问题 ''' 1.通过pip3安装虚拟环境: -- pip3 install virtualenv 2.前往目标文件夹: -- cd 目标文件夹 (C:\Vir ...

  5. django虚拟环境安装

    虚拟环境主要是防止不同版本的模块之间的冲突,维护多个项目的时候这个非常重要. 虚拟环境的安装 sudo apt install python-virtualenv 虚拟环境安装成功后,直接创建一个虚拟 ...

  6. 第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块

    第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块 virtualenv简介 1.安装virtuale ...

  7. virtualenv虚拟环境安装不同版本的django

    在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4.所有第三方的包都会被pip安装到Python3的site-packages目录下. 如果我们要同时开发多个应用程序,那这 ...

  8. Centos7 虚拟环境安装Django 出现ImproperlyConfigured('SQLite 3.8.3 or later is required (found %s).' %Database.sqlite_version)错误

    Centos7 虚拟环境安装Django 出现SQLite版本问题 raise ImproperlyConfigured('SQLite 3.8.3 or later is required (fou ...

  9. 一、自动化平台搭建-python虚拟环境安装

    主要知识点介绍: 安装django环境 创建django项目 设计模型类并利用模型类和数据库进行交互 使用django后台管理数据 编写视图函数,进行URL配置 模板的使用 图书-英雄案例完成 1.虚 ...

随机推荐

  1. iOS蓝牙架构搭建-2

    蓝牙架构的搭建 前言:笔者认为,如果只是单纯的传授大家代码怎么敲,那么大家很有可能在实际开发中难以运用.刚好本人曾经参与过多款智能硬件开发的架构搭建,本小节本人就现场带领大家开发出一个通用的蓝牙工具类 ...

  2. 洛谷 P3957 跳房子

    https://www.luogu.org/problemnew/show/P3957 错误记录:1.没开longlong 2. -inf不够小 #include<cstdio> #inc ...

  3. mybatis实现简单的增删查改

    接触一个新技术,首先去了解它的一些基本概念,这项技术用在什么方面的.这样学习起来,方向性也会更强一些.我对于mybatis的理解是,它是一个封装了JDBC的java框架.所能实现的功能是对数据库进行增 ...

  4. toLua学习

    toLua学习通用的过程//开始LuaState lua = new LuaState();lua.Start();--在这个位置插入lua的具体操作--//结束lua.CheckTop();lua. ...

  5. C# 连接 Oracle,读取Blob字段数据,存到文件中去,包括pdf等等

    代码如下,记得引入Oracle的dll using System; using System.Collections.Generic; using System.ComponentModel; usi ...

  6. public private protected 三种访问修饰符在c#中的区别

    1. public 公有的可见性:在类自身内部可见: 可被子类继承: 类外部可见 2. protected 受保护的可见性:在类自身内部可见: 可被子类继承: 类外部不可见 3. private 私有 ...

  7. (AOP)理解

    AOP的全称: Aspact  Oriented  Programming AOP的目标(作用):让我们可以“专心做事”  日志记录,事务处理,异常捕获,缓存操作. AOP原理 将复杂的需求分解出不同 ...

  8. LR中下载文件的脚本

    #include "web_api.h" Action(){ int iflen; //文件大小 long lfbody; //响应数据内容大小 web_url("xxx ...

  9. TCP的三次握手与四次挥手详解

    TCP的三次握手与四次挥手是TCP创建连接和关闭连接的核心流程,我们就从一个TCP结构图开始探究中的奥秘  序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序 ...

  10. CPP-基础:strcpy之于C++(

    以下对strcpy函数错误的是? char atr1[]="string"; ]; char *str3; char *str4="sting"; A.strc ...