6月12日 python学习总结 框架
1. 登录功能的实现
1. form表单提交数据的注意事项:
1. 是form不是from,必须要有method和action
2. 所有获取用户输入的表单标签要放在form表单里面,表单标签必须要有name属性
3. form表单必须要有submit按钮
2. GET和POST
什么时候用GET:
向服务端请求一个网页的时候
搜索引擎检索时
什么时候用POST:
使用表单向服务器提交数据时
3. request.method --> 获取的是你请求的方法(GET/POST...) 必须是大写!!!
4. request.POST --> 获取POST提交过来的全部数据(字典)
5. redirect --> 跳转到指定页面!!!
基础必会三件套:
1. HttpResponse("OK")
2. render(request, "login.html")
3. redirect("URL")
示例如下:
from django.conf.urls import url
from django.contrib import admin
from django.shortcuts import HttpResponse, render, redirect
from app01 import views def index(request):
return render(request, "Dashboard.htm") def login(request):
if request.method == 'POST':
username = request.POST.get("username")
pwd = request.POST.get("pwd")
if username == 'lyj' and pwd == '123':
return HttpResponse("login successfull")
else:
return redirect("http://www.runoob.com") return render(request, "login.html") urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^index/', index),
url(r'^login/', login),
]
urls.py
6. app
project (学校)
- app (学院)
创建APP
1. (在pycharm 控制台输入):
python3 manage.py startapp app01
2. 在创建Django项目的同时创建一个初始的app
创建好APP,记得告诉Django, 我有这个app
在settings.py中,
# 安装的app都有哪一些
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app01',
# 'app01.apps.App01Config',
]
2. ORM(对象关系映射)
1. pymysql
import pymysql
conn = pymysql.connect(
host="127.0.0.1",
port=3306,
user="root",
password="123",
database="day62",
charset="utf8"
)
cursor = conn.cursor()
cursor.execute("slect * from user;")
ret = cursor.fetchall()
2.
document.getElementById(id)
$("#id")
数据表 类
数据行 实例对象
字段 属性
代码操作数据库的方式;
直接执行SQL:
优点:执行效率高
缺点:开发效率低
按照特定的语法写,翻译成SQL语句再去执行
优点:开发效率高
缺点:执行效率低,你会忘记SQL语句
ORM:
sqlAlchemy Flask
ORM和原生的SQL语句,根据具体的应用场景自行取舍。
Django里面的ORM的使用:
1. 告诉Django连接那个数据库 (setting.py里)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'day62',
'HOST': '127.0.0.1',
'PORT': 3306,
'USER': 'root',
'PASSWORD': '123',
}
}
2. 告诉Django怎么连接
Django默认使用的是 MySQLdb模块 连接数据库
告诉Django用pymysql这个模块去连接MySQL
在settings.py同目录下的__init__.py文件中,指定使用pymysql模块代替MySQLdb
import pymysql
pymysql.install_as_MySQLdb()
3. 在app/models.py文件中定义类
一定要继承models.Model
4. 执行创建表的操作 (在pycharm 控制台输入)
1. python3 manage.py makemigrations --> 将models.py的修改登记到小本本上
2. python3 manage.py migrate --> 将修改翻译成SQL语句,去数据库执行
3、pycharm自带的数据库图形用户界面:
4、实现动态展示html页面数据:
6月12日 python学习总结 框架的更多相关文章
- 4月12日 python学习总结 继承和派生
一.继承 什么是继承: 继承是一种新建类的方式,在python中支持一个子类继承多个父类 新建类称为子类或派生类 父类可以称之为基类或者超类 子类会遗传父类的属性 2. 为什么继承 ...
- 2019年12月12日英语学习-Will I Or Won't I ?
这节英语课上的内容没记住多少东西,觉得这个主题太枯燥了,不过整堂课和外教沟通交流还是不错的,因为这节课就我一个学生.给我了充分的机会去张嘴交流互动. 也没记住什么东西,不知道写什么.只记住将要决定做某 ...
- 4月2日 python学习总结
昨天内容回顾: 1.迭代器 可迭代对象: 只要内置有__iter__方法的都是可迭代的对象 既有__iter__,又有__next__方法 调用__iter__方法==>得到内置的迭代器对象 调 ...
- 4月8日 python学习总结 模块与包
一.包 #官网解释 Packages are a way of structuring Python's module namespace by using "dotted module n ...
- 4月11日 python学习总结 对象与类
1.类的定义 #类的定义 class 类名: 属性='xxx' def __init__(self): self.name='enon' self.age=18 def other_func: pas ...
- 2013年8月12日Python的5个最有价值问题
问:Python怎么在字典里删除值但保留相应的键 答: 假设3都在值里,而非键>>> for v in D1.values():... if 3 in v:... ...
- 6月13日 python学习总结 Django框架
1. 内容回顾 1. 基础必会三件套 from django.shortcuts import HttpResponse, render, redirect - HttpResponse(" ...
- 5月31日 python学习总结 JavaScript概述
JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECM ...
- 6月15日 python学习总结 Django模板语言相关内容
Django模板语言相关内容 Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} ...
随机推荐
- Note - 千年食谱颂
其实是兔子收集的各种下饭操作与名菜食谱.( 零·策略篇 多校 NOIP 2021.11.05: 这个真的是,我每次打毛毛虫剖分都是 rush 状态 qwq.像这种 已知代码难度大.不便于调试的 ...
- Solution -「多校联训」博弈
\(\mathcal{Description}\) Link. A B 两人在树上博弈,初始时有一枚棋子在结点 \(1\).由 A 先操作,两人轮流移动沿树上路径棋子,且满足本次移动的树上距离 ...
- 暑假撸系统1-先把git后悔药准备好!
学校规定让暑假自己撸一款在线考试系统,其实的确需要一个款在线的考试系统系统,因为平时学校是使用Excel讲解选择题的.基于这个目标那么就话不多说.开干! 本来趁着项目想练练手,使用些新学习的技能看看, ...
- GCC 使用库文件名进行链接
使用 GCC 进行 C/C++ 代码编译时,如果代码中使用到了库函数,需要使用 -l 选项指定该库函数所在的库.如:-lm.-lrt.-lpthread等.这种方式使用的是库的缩写.一个库的文件名如果 ...
- NeurIPS 2017 | TernGrad: Ternary Gradients to Reduce Communication in Distributed Deep Learning
在深度神经网络的分布式训练中,梯度和参数同步时的网络开销是一个瓶颈.本文提出了一个名为TernGrad梯度量化的方法,通过将梯度三值化为\({-1, 0, 1}\)来减少通信量.此外,本文还使用逐层三 ...
- Spring Boot数据访问之动态数据源切换之使用注解式AOP优化
在Spring Boot数据访问之多数据源配置及数据源动态切换 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中详述了如何配置多数据源及多数据源之间的动态切换.但是需要读数据库的地方,就 ...
- Learning Schedules
近期目标 1. 争取搞定小论文 2. Java SE 学习 3. 剑指Offer每日1-2题
- 攻防世界之Web_supersqli
题目 本题考查sql注入传送门https://www.cnblogs.com/shacker/p/15917173.html 按照SQL注入一步一步执行 发现有2个列 然后用union select联 ...
- 前端点击png透明部分解决方案
看效果:点击空白区域红色1.点击实体区域红色2.分别得到颜色数据(包括透明度数据),控制台蓝色1.2.根据颜色数据即可解决png透明部分的点击问题. 让图片不能点击,分两种 1. 整张图片不能点击.这 ...
- WebLogic服务器打补丁(11g/12c)
转至:https://segmentfault.com/a/1190000019059894 背景 2019年04月17日,Oracle发布新季度安全公告.该安全公告披露WebLogic服务器存在多个 ...