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学习总结 框架的更多相关文章

  1. 4月12日 python学习总结 继承和派生

    一.继承 什么是继承:   继承是一种新建类的方式,在python中支持一个子类继承多个父类   新建类称为子类或派生类   父类可以称之为基类或者超类   子类会遗传父类的属性 2.  为什么继承 ...

  2. 2019年12月12日英语学习-Will I Or Won't I ?

    这节英语课上的内容没记住多少东西,觉得这个主题太枯燥了,不过整堂课和外教沟通交流还是不错的,因为这节课就我一个学生.给我了充分的机会去张嘴交流互动. 也没记住什么东西,不知道写什么.只记住将要决定做某 ...

  3. 4月2日 python学习总结

    昨天内容回顾: 1.迭代器 可迭代对象: 只要内置有__iter__方法的都是可迭代的对象 既有__iter__,又有__next__方法 调用__iter__方法==>得到内置的迭代器对象 调 ...

  4. 4月8日 python学习总结 模块与包

    一.包 #官网解释 Packages are a way of structuring Python's module namespace by using "dotted module n ...

  5. 4月11日 python学习总结 对象与类

    1.类的定义 #类的定义 class 类名: 属性='xxx' def __init__(self): self.name='enon' self.age=18 def other_func: pas ...

  6. 2013年8月12日Python的5个最有价值问题

    问:Python怎么在字典里删除值但保留相应的键 答: 假设3都在值里,而非键>>> for v in D1.values():...     if 3 in v:...       ...

  7. 6月13日 python学习总结 Django框架

    1. 内容回顾 1. 基础必会三件套 from django.shortcuts import HttpResponse, render, redirect - HttpResponse(" ...

  8. 5月31日 python学习总结 JavaScript概述

    JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECM ...

  9. 6月15日 python学习总结 Django模板语言相关内容

    Django模板语言相关内容   Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{  }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} ...

随机推荐

  1. 干工第一天,这个api超时优化把我干趴下了!

    近日我司进行云服务商更换,恰逢由我负责新上线的三方调用 api 维护管理,在将服务由阿里云部署到腾讯云过程中,我们压测发现在腾讯云调用京东接口时 TP999 抖动十分剧烈,尽管业务层有重试操作但是超时 ...

  2. Solution -「洛谷 P4198」楼房重建

    \(\mathcal{Description}\)   Link.   给定点集 \(\{P_n\}\),\(P_i=(i,h_i)\),\(m\) 次修改,每次修改某个 \(h_i\),在每次修改后 ...

  3. MySQL架构原理之体系架构

    MySQL是最流行的关系型数据库软件之一,由于其体量小.速度快.开源免费.简单易用.维护成本低等,在季军架构中易于扩展.高可用等优势,深受开发者和企业的欢迎,在互联网行业广泛使用. 其系统架构如下: ...

  4. 蓝桥杯2022年java试题

    一:基础练习: (本文只附代码,解析后续修改后添上) 1.a+b问题: 代码如下: 1 import java.util.*; 2 public class Main { 3 public stati ...

  5. k8s核心资源之:标签(label)

    简介 label是标签的意思,一对 key/value ,被关联到对象上,k8s中的资源对象大都可以打上标签,如Node.Pod.Service 等 一个资源可以绑定任意多个label,k8s 通过  ...

  6. windev的字符集选择设置及元素命名方法建议

    windev支持多语言,且支持整站翻译,同时支持最终用户的多语言选择,可以说多语言功能已经非常的全面和强大. windev原生支持英语.法语和葡萄牙语,在使用如中文等非拉丁字母语言时,需要在多个地方进 ...

  7. 【C# 异常处理】调试器 管理异常

    装载自:https://docs.microsoft.com/zh-cn/visualstudio/debugger/managing-exceptions-with-the-debugger?vie ...

  8. C# lambda 表达式 和=>的含义

    函数式编程 函数式编程(英語:functional programming)或称函数程序设计.泛函编程,是一种编程范式,它将电脑运算视为函数运算,并且避免使用程式状态以及易变物件.其中,λ演算为该语言 ...

  9. JZ-009-变态跳台阶

    变态跳台阶 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 题目链接: 变态跳台阶 代码 /** * 标题:变态跳台阶 * 题 ...

  10. Linux CentOS7.X-安装mysql5.7数据库(安装包tar.gz)

    一.下载对应版本的mysql 1.官网下载压缩安装包. 进入到mysql官网下载自己对应版本的mysql,下载地址:https://dev.mysql.com/downloads/mysql/5.7. ...