标签:use 自动 dir djang www email 单表 day 检索
一个完整得请求流程:
0. 启动服务端,等待客户端(用户的浏览器)来连接
1. 在浏览器地址栏输入URL,与服务端建立连接,浏览器发送请求
2. 服务端收到请求消息,解析请求消息,根据路径和函数的对应关系,找到将要执行的函数
3. 执行函数,打开HTML文件,进行字符串替换,得到一个最终要返回的HTML内容
4. 按照HTTP协议的消息格式要求,把HTML内容回复给用户浏览器(发送响应)
5. 浏览器收到响应的消息之后,按照HTML的规则渲染页面.
6. 关闭连接
Django安装:
pip3 install django==1.11.11
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ django==1.11.11
1. 命令行启动
在项目的根目录下(也就是有manage.py的那个目录),运行:
python3 manage.py runserver IP:端口 #--> 在指定的IP和端口启动
python3 manage.py runserver 端口 #--> 在指定的端口启动
python3 manage.py runserver #--> 默认在本机的8000端口启动
2. PyCharm启动
点绿色的小三角,直接可以启动Django项目(前提是小三角左边是你的Django项目名)
2. 静态文件(css/js/图片)
# 静态文件保存目录的别名
STATIC_URL = ‘/static/‘
# 所有静态文件(css/js/图片)都放在我下面你配置的文件夹中
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
form表单往后端提交数据需要注意
1. form不是from,所有获取用户输入的标签都应该放在form里面, 并且必须要有name属性
2. action属性控制往哪儿提交,method一般都设置成post
3. 提交按钮必须是type=submit,不能是别的类型
http://www.baidu.com/s?wf=素还真
POST请求:
1. 浏览器向服务端提交数据,比如登录/注册等
django 获取POST表单值
email = request.POST.get('email',None)
pwd = request.POST.get('pwd',None)
project --> 项目 (清华学校)
APP --> 应用 (经济与管理学院/美术学院)
方便我们在一个大的Django项目中,管理实现不同的业务功能.
1. 创建APP的命令
1. 命令行,在Django项目的根目录输入:
python3 manage.py startapp app名字
import pymysql
pymysql.connect(
...
...
)
python语法 --自动翻译--> SQL语句
jQuery DOM
$("#d1") --自动翻译--> document.getElementById("d1")
ORM:
优点:
ORM的对应关系:
类 ---> 数据表
对象 ---> 数据行
属性 ---> 字段
ORM能做的事儿:
操作数据表 --> 创建表/删除表/修改表
操作models.py里面的类
操作数据行 --> 数据的增删改查
不能创建数据库,自己动手创建数据库
使用Django的ORM详细步骤:
在Django项目中设置连接数据库的相关配置(告诉Django连接哪一个数据库)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 连接的数据库类型
'HOST': '127.0.0.1', # 连接数据库的地址
'PORT': 3306, # 端口
'NAME': "day61", # 数据库名称
'USER': 'root', # 用户
'PASSWORD': '123456' # 密码
}
}
import pymysql
# 告诉Django用pymysql来代替默认的MySQLdb
pymysql.install_as_MySQLdb()
class 类名(models.Model):
...
python3 manage.py makemigrations
python3 manage.py migrate
ORM单表的增加和查询:
models.UserInfo.objects.all()
models.UserInfo.objects.create(name="张三")
标签:use 自动 dir djang www email 单表 day 检索
原文地址:https://www.cnblogs.com/anyux/p/11921995.html