django总结 --》内容(django建project开始的大致流程、ORM简介)
1 安装:
pip install django==1.11.9
另外:在pycharm中安装 django,在下图中七步走

2. 新建Django项目
django-admin startproject 项目名
3. Django 设置 settings.py文件中
1. 注释掉 csrf相关的那一行(大概是46行!)
2. 配置html文件相关
3. 配置静态文件相关 /static/
4. 基础必备的三件套
1. HttpResponse --> 字符串
2. render() --> HTML文件 --> 打开HTML文件并且完成字符串的替换
3. redirect(“/book_list/”) --> 跳转
5. HTML页面中form表单提交数据三个要点:
1. input一定要放在form表单里面,并且 input 要有name属性
2. form表单里面触发提交操作 一定要有submit按钮!!! <input type="submit" value="提交">
3. 要指定form表单提交的URL(action属性) 并且指定提交的方法(method属性)
Django中操作MySQL数据库的准备工作:
1. 自己用SQL语句建个数据库 --> create database s20;
2. 告诉Django去哪儿连数据库
在settings.py文件中设置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 告诉Django连接数据库的类型
'NAME': 's20',
'HOST': "127.0.0.1",
'PORT': 3306, # 不要加引号
'USER': "root",
"PASSWORD": "123456", # 要加引号
}
}
3. MySQLdb、pymysql,告诉Django使用pymysql连接MySQL数据库
project/__init__.py文件中:
import pymysql
pymysql.install_as_MySQLdb()
4. 在app/models.py文件中,根据特定的语法 创建类
class Book(models.Model):
# 定义一个自增的ID主键
id = models.AutoField(primary_key=True)
# 定义一个最大长度为32的varchar字段
title = models.CharField(max_length=32)
5. 执行两个命令
1. python manage.py makemigrations --> 记录 app/models.py文件的任何改动
2. python manage.py migrate --> 把上面的改动翻译成SQL语句,然后去数据库中执行
对数据的增删改查
1. 增
Book.objects.create(title="书名",....)
2. 删
models.Book.objects.get(id=2).delete()
3. 改
obj = models.Book.objects.get(id=1)
obj.title = "字段2"
obj.save() --> 把改动同步到数据库中!!!
4. 查
查单个:
obj = models.Book.objects.get(id=1) 查所有:
objs = models.Book.objects.all()
django的模型层 -ORM简介
ORM,全称是object relation mapping 对象关系映射
主要学习的是Mysql
在py文件中可以使用pymysql来操作mysql
ORM的映射关系如下
ORM引擎
python ---------------> sql 类名 表名
属性变量 字段
属性值 约束条件 对象 一条记录
ORM的特点
1 符合python语法
2 自己写的sql语句,效率不高。
3 将用户的sql转换成mysql的相关语句,需要一个翻译的过程
想要查看ORM的命令转换可以在settings下面加入
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console':{
'level':'DEBUG',
'class':'logging.StreamHandler',
},
},
'loggers': {
'django.db.backends': {
'handlers': ['console'],
'propagate': True,
'level':'DEBUG',
},
}
}
使用命令
python manage.py makemigrations
python manage.py migrate
就可以看到命令的详细转换了
django总结 --》内容(django建project开始的大致流程、ORM简介)的更多相关文章
- python学习笔记--Django入门三 Django 与数据库的交互:数据建模
把数据存取逻辑.业务逻辑和表现逻辑组合在一起的概念有时被称为软件架构的 Model-View-Controller (MVC)模式.在这个模式中, Model 代表数据存取层,View 代表的是系统中 ...
- 全面解读Python Web开发框架Django,利用Django构建web应用及其部署
全面解读Python Web开发框架Django Django是一个开源的Web应用框架,由Python写成.采用MVC的软件设计模式,主要目标是使得开发复杂的.数据库驱动的网站变得简单.Django ...
- Django初级之django简介
1.Django简介 Django是Python语言中的一个web框架,Python语言中主流的web框架有Django.Tornado.Flask 等多种.Django相较与其它WEB框架,其优势为 ...
- Django框架02 /Django下载安装、url路由分发
Django框架02 /Django下载安装.url路由分发 目录 Django框架02 /Django下载安装.url路由分发 1. django下载安装 2. pycharm创建项目 3. 基于D ...
- 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序
Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.ng ...
- [Django高级]理解django中的中间件机制和执行顺序
原文来自 Understanding Django Middlewares, 这篇文章从整体上介绍了django中中间件定义,作用,和怎么样自己写中间件 –orangleliu. 注:middlewa ...
- web框架开发-Django模型层(1)之ORM简介和单表操作
ORM简介 不需要使用pymysql的硬编码方式,在py文件中写sql语句,提供更简便,更上层的接口,数据迁移方便(有转换的引擎,方便迁移到不同的数据库平台)…(很多优点),缺点,因为多了转换环节,效 ...
- python django基础四 ORM简介
ORM,全称是object relation mapping.翻译过来,就是对象关系映射. 主要来学习MySQL操作,MySQL是一个软件.它的优点:1.免费 2.开源 pymysql,就是Mysql ...
- python 全栈开发,Day70(模板自定义标签和过滤器,模板继承 (extend),Django的模型层-ORM简介)
昨日内容回顾 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 Quer ...
随机推荐
- [C#]async和await刨根问底
上一篇随笔留下了几个问题没能解决:· 调用IAsyncStateMachine.MoveNext方法的线程何时发起的?· lambda的执行为何先于MoveNext方法?· 后执行的MoveNext方 ...
- 网易云课堂js学习笔记
javascript:用来在页面中编写特效的,和html/css一样都是由浏览器解析的 javascript语言: 一.js如何运行的(javaScript,jscript,vbscript,appl ...
- django get post files请求知识点
GET: 我们在浏览器里直接键入地址回车,这种方式其实也是get方式提交了数据,如: http://localhost/login?user=123&pwd=123 就是把用户名123密码1 ...
- .net core 连接sql server 时提示Connection Timeout Expired
.net core开发环境是ubuntu LINUX, 在ubuntu 上 telnet 数据库IP 端口是通的. SQL SERVER 是2008 ,未打SP补丁. 打完 SQL SERVER 2 ...
- vlan交换机的端口模式有哪几种
一 端口类型1 ,Access用户模式2 ,Trunk链路模式3 ,Hybrid模式(跟Trunk很类似但比trunk高级)二 端口介绍2.1 ,Access类型端口:只允许默认vlan的以太网帧,也 ...
- python 正则表达提取方法 (提取不来的信息print不出来 加个输出type 再print信息即可)
1,正则表达提取 (findall函数提取) import re a= "<div class='content'>你大爷</div>"x=re.finda ...
- Java NIO系列教程(二) Channel通道介绍及FileChannel详解
目录: <Java NIO系列教程(二) Channel> <Java NIO系列教程(三) Channel之Socket通道> Channel是一个通道,可以通过它读取和写入 ...
- 第一天课程:第一个python程序print say hello
print("Hello World") linux下要加可执行权限 chmod 755 hello.py 权限755,7=4+2+1,4是读,2是写,1是执行,第一个7代表用户, ...
- Django简介及Django项目的创建详述
Django简介 Django是一个开源的Web应用框架,由Python写成.但是,百度百科中讲它采用了MVC框架模式,其实这个解释不准确. 确切的讲,Django的模式是:路由控制+MTV模式.所谓 ...
- Linux 防火墙和SELinux的开启和关闭
防火墙(firewalld) 临时关闭防火墙 systemctl stop firewalld 永久防火墙开机自关闭 systemctl disable firewalld 临时打开防火墙 syste ...