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 ...
随机推荐
- python获取代理IP并测试是否可用
# coding: utf-8 import urllib2 import re import time def getDL(page): url = 'http://www.xicidaili.co ...
- spring4与mongodb的集成
新项目的辅助系统,需要用到mongo系统,今天再次将其使用环境进行了操作搭建.还是遇到一些问题,毕竟之前使用的场景和现在的不同.版本也不一样了. 本次使用的环境: mongo:3.4.4版本 OS: ...
- Win10+Ubuntu1604双系统
原本电脑有一块固态硬盘和机械硬盘,用来跑win10的,现在想直接在ubuntu上跑tensorflow,所以加了块320G的机械硬盘单独跑ubuntu. 一.准备 1.ubuntu-16.04.3-d ...
- error: C++ preprocessor "/lib/cpp" fails sanity check错误解决方法
error: C++ preprocessor "/lib/cpp" fails sanity check 问题的解决 问题的根源是缺少必要的C++库.如果是CentOS系统,运行 ...
- WPF实现打印用户界面功能2
帮助类: using System; using System.Drawing.Printing; using System.IO; using System.Windows.Forms; names ...
- 关于JFame 屏幕居中显示的问题
场景: 在利用 JAVA 的 Swing 开发 C/S 架构 的前端界面 目的: 想让 JFrame 居中显示在整个 屏幕的正中位置 方法一:JFrame frame = new JFr ...
- 学习笔记之tmux
Home · tmux/tmux Wiki · GitHub https://github.com/tmux/tmux/wiki tmux is a terminal multiplexer. It ...
- [转][Oracle][null]
trim(nvl(ipaddress,'')) != '' 这段SQL 并没有像 MSSQL IsNull 一样返回不含空白或null 的内容 经尝试发现 trim('') 为 null a fr ...
- docker构建tomcat镜像
下载centos镜像 # docker pull daocloud.io/centos:7 [root@localhost ~]# docker pull daocloud.io/centos: : ...
- VRRP、Track与NQA联动配置举例(Master监视上行链路)
原文 http://www.h3c.com/cn/d_201708/1018729_30005_0.htm#_Toc488338729 1. 组网需求 Host A需要访问Internet上的Host ...