DAY65
# 1.web应用
# 2.CS和BS架构
# 3.http协议
# 特点: 1.接受请求正在处理
# 2.请求处理完毕
# 3.需要进行附加操作以完成请求
# 4.服务器无法处理请求
# 5.服务器处理请求出错
# 请求头:
# 请求首行 get / http /1.1\r\n(请求方式,请求协议,协议版本)
# key:value\r\n (请求信息)
# key:value\r\n
# \r\n (请求体的内容)
# 响应头:协议 状态码 描述信息
# 4.python中主流web框架
# a: socket
# b: 路由和视图函数关系匹配
# c: 模板渲染
# django a用的别人的 b自己写的 c用的别人的
# flask a用的别人的 b用的别人的 c用的别人的
# tornado a自己写的 b自己写的 c自己写的
# web2.py 小型框架
# 5.django的安装与使用
# 1.pip3 install django == 1.11.9
# 2.django-admin startproject 项目名字
# 3.python36 manage.py startapp app名字
# 4.pycharm打开项目在,
# 5.执行项目:python3 manage.py runserver 127.0.0.1:8006
# python3 manage.py runserver 8006
# python3 manage.py runserver
# 6.目录结构:
# 1.工程名的文件夹:settings:全局配置
# urls:路由跟视图函数映射关系
# app名字的文件夹:views:视图函数 models:orm关系映射
# 今日内容:
# 1.django中APP的概念:
# 大学-----------项目
# 信息学院----------app01
# 物理学院----------app02
# ***强调***创建了app,要在配置文件中注册
# ...
# 2.模板路径配置:
# 1.templates文件夹
# 2.settings里注册一下
# 3.静态文件配置:
# 1.STATIC_URL = '/static/'
# 2.创建一个static文件夹
# 3.STATICFILES_DIRS=[
# os.path.join(BASE_DIR,'static'),创建的文件夹路径(可以写多个)
# ]
# 4.完整版登陆功能
# 1.login.html
# //--重点--//1.action:提交到后台的地址三种写法:
# (1)http:127.0.0.1:8000/login
# (2)/login/ 推荐用
# (3)空
# 2.method post方式
# 3.<input type="submit" value="提交">或<button></button>
# type不可以是button
# <form action="http://127.0.0.1:8000/login" method="post">
# <p>用户名: < input type = "text" name = "user" ></p>
# <p>密码: < input type = "text" name = "pwd" ></p>
# <button>提交</button></form>
# 2.视图层:
# (1)request.method-----前台提交过来请求的方式
# (2)request.POST(相当于字典)----post形式提交过来的数据,(http请求报文的请求体中)
# (3)request.POST.get('name')----推荐用get取值(取出列表最后一个值)
# (4)request.POST.getlist('name')----取出列表所有的值
# (5)前台get方式提交的数据,从request.GET字典里取
# 3.链接数据库(防止注入,推荐一下写法)
# cur.execute('select * from user where name=%s and password=%s',[name,pwd])
# 5.get请求和post请求
# get:获取数据,页面,携带数据是不重要的数据(数据量有大小限制)
# post:往后台提交数据
# 6.新手三件套总结
# 1.render--返回页面
# 默认会去templates里找,注意路径
# 2.redirect--重定向
# 3.HttpResponse
# 本质都是返回HttpResponse的对象
# 7.orm介绍
# 1.ORM即Object Relational Mapping,全称对象关系映射。
# 优点:
# 1.不用写sql, 不会sql的人也可以写程序
# 2.开发效率高
# 缺点:
# 1.可能sql的效率低
# 3如何使用:
# 如果连接mysql: 在setting里配置:
# 'default': {
# 'ENGINE': 'django.db.backends.mysql',
# 'HOST': '127.0.0.1',
# 'PORT': 3306,
# 'USER': 'root',
# 'PASSWORD': 'admin',
# 'NAME': 'lqz',
# }
# 在app下的__init__.py里写:
# import pymysql
# pymysql.install_as_MySQLdb()
#
# 4.django - orm:
# 1.不能创建数据库(需要手动创建数据库)
# 2.可以创建数据表
# 3.可以创建字段
#
# 5.数据库迁移
# 1.python3 manage.py makemigrations - ---记录一下数据库的变化
# 2.python3 manage.py migrate - ---将变化同步到数据库中
# flag = models.User.objects.filter(usr=name, pwd=pwd).first() 判断账号密码是否正确
# dic = models.Book.objects.all() 从数据库去全部的数据
# models.Tb1.objects.filter(name='seven').delete() # 删除指定条件的数据
# 改 models.Tb1.objects.filter(name='seven').update(gender='0') # 将指定条件的数据更新,均支持 **kwargs
# obj = models.Tb1.objects.get(id=1)
# obj.c1 = '111'
# obj.save() # 修改单条数据
DAY65的更多相关文章
- day65——day69
目录 DAY65 课堂笔记 1.vue实例 2.插值表达式 3.文本指令 4.面向对象js 5.js函数补充 6.事件指令 7.属性指令 DAY66 课堂笔记 1.表单指令 2.条件指令 3.循环指令 ...
- day65 request对象,以及方法,response对象,render,redirect
这里的都是我们会频繁使用到的,用得多了自然就会了,我们写项目都是少不了这些用法的,所以这就把老师的博客粘过来就好了, Request对象 官方文档 属性 所有的属性应该被认为是只读的,除非另有说明. ...
- python 全栈开发,Day65(MySQL练习题,参考答案)
一.MySQL练习题 一.表关系 请创建如下表,并创建相关约束 二.操作表 1.自行创建测试数据 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号.ps:针对的是自己的生物成绩比物理成绩高,再 ...
- python 全栈开发,Day65(索引)
索引 一.索引的介绍 数据库中专门用于帮助用户快速查找数据的一种数据结构.类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置吗,然后直接获取. 二 .索引的作用 约束和加速查找 三.常 ...
- day65 Django模板语言
常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} 变量名由字母数字和下划线组成. 点(.)在模板语言中有特殊的含 ...
- web应用与web框架(Day65)
Web应用 对于所有的web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端 import socket def handle_request(client): ...
- (day65、66)Vue基础、指令、实例成员、JS函数this补充、冒泡排序
目录 一.Vue基础 (一)什么是Vue (二)为什么学习Vue (三)如何使用Vue 二.Vue指令 (一)文本指令 (二)事件指令v-on (三)属性指令v-bind (四)表单指令v-model ...
- (day65)作业
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- day65—angularJS的学习笔记1
转行学开发,代码100天—2018-05-20 AngularJS的引用示例: <!DOCTYPE html> <html> <head> <title> ...
随机推荐
- 初识vuex vuex 的基本用法
Vuex 是什么? 官方是这么说的:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 一个完 ...
- grafana启用mysql作为的后台数据库
vim grafana-5.4.2/conf/defaults.ini grafana默认使用sqlite3使用后台数据库,可选用mysql,postgres,sqlite3. 重新启动 注意: gr ...
- 基于 Web 的 Go 语言 IDE - Wide 1.5.2 发布!
这个版本由热心的开源贡献者加入了韩语支持,欢迎各位 gophers 加入到 Wide 的开源开发中.另外,这个版本还改进了 Playground,使其更稳定和易用.目前黑客派社区已经支持嵌入 Wide ...
- SD从零开始41-44
[原创] SD从零开始41 科目确定(Account determination) 使用科目确定Using Account Determination 你将需要在几个不同的领域确定将要记账的科目: 用 ...
- Leaflet.draw 无法编辑multipolygon类型多边形 解决方法
问题说明 在做面要素的编辑的时候,当对multiploygon类型的面要素进行编辑的时候,出现如下错误: TypeError: Cannot read property 'lat' of null 通 ...
- Ubuntu16.04.2 LTS下使用编译安装程序(使用configure、make、 make install)
以安装vim为例. (vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面). 1.获取源文件 首先进入/usr/local下(只是为了方便处理安装文件,位置随意) 用git ...
- SQLServer SQL连接查询深度探险(摘录
SQL连接查询深度探险[摘录] 测试环境: Windows XP Profession MySQL 5.0.45 Oracle 9i DB2 UDB 9.1 测试的SQL脚本如下:此脚本适合MySQL ...
- iOS 开发之环形倒计时进度条(虚线/实线)
代码很简单,一看便知.这里为顺时针,若想要逆时针,clockwise改为0,还需更改起始角度和终点角度. 源码地址:https://github.com/LfyDragon/CountDown 直接上 ...
- aop 拦截含有特定注解的类
1.功能点:使用aop拦截含有自定义注解的类 1.自定义注解 package com.zhuanche.common.dingdingsync; import java.lang.annotation ...
- mySQL 约束 (Constraints)
约束用于限制加入表的数据的类型: 1.创建表时规定约束(通过 CREATE TABLE 语句) 2.表创建之后也可以(通过 ALTER TABLE 语句). 约束类型: NOT NULL(非空) UN ...