day60 Pyhton 框架Django 03
day61 内容回顾 1.安装 1. 命令行:
pip install django==1.11.18
pip install django==1.11.18 -i 源
2. pycharm
setting —》 解释器 —》 点+号 —》 输入django —》 选择版本—》安装 2.创建项目 1. 命令行:
django-admin startproject 项目名称
1. pycharm
file ——》 new project ——》 django ——》 项目目录 ——》选择解释器——》输入app名称 ——》创建 3.启动项目 1. 命令行:
切换到项目根目录下 manage.py
python manage.py runserver # 127.0.0.1:8000
python manage.py runserver 80 # 127.0.0.1:80
python manage.py runserver 0.0.0.0:80 # 0.0.0.0:80
2. pycharm
配置
点击绿三角 4.urls.py 地址和函数的对应关系 from django.conf.urls import url
from app01 import views urlpatterns = [
url(r'^login/', views.login),
url(r'^index/', views.index),
url(r'^test/', views.test),
] 5.函数 接收一个参数:request 跟请求相关 request.method 请求方法 GET POST request.POST form表单提交POST请求的数据 {} get() [] request.GET url上的参数 {} 返回值: from django.shotcuts import HttpResponse, render, redirect HttpResponse('显示的内容') ——》 字符串 render(request,‘HTML文件名’) ——》 返回一个完整的HTML页面 redirect('要跳转的地址') ——》 重定向 Location : 地址 6.app 1.创建APP 1. 命令行:
python manage.py startapp app名称
2. pycharm
tools ——》 run manage.py task ——》 startapp app名称 2.注册app INSTALLED_APPS = [
'app01',
'app01.apps.App01Config',
] 7.配置文件 静态文件: STATIC_URL = '/static/' # 别名 STATICFILES_DIRS = [ os.path.join(BASE_DIR,'static'), ] 模板: TEMPLATES
'DIRS': [os.path.join(BASE_DIR, 'templates')] 中间件: 注释掉 'django.middleware.csrf.CsrfViewMiddleware' 数据库 8.form表单 1. action=‘’ method='post' action 提交的地址 method提交的方式
2. 所有的input标签要有name属性
3. 要有一个type=submit input标签 或者 button按钮 9.get 和 post 区别 get 获取一个页面 地址?k1=v1&k2=v2 request.GET post 提交数据 request.POST 10.django使用mysql数据库的流程: 1. 创建一个mysql数据库
2. 配置
ENGINE: mysql
NAME: 数据库名
HOST: IP '127.0.0.1'
PORT : 3306
USER: 'root'
PASSWORD: ''
3. 告诉django使用pymysql模块连接mysql数据库
在于settings同级目录下的init.py中写
import pymysql
pymsql.install_as_MySQLdb()
4. 创建表(在app下的models.py中写类) from django.db import models class User(models.Model): # app名称_user
username = models.CharField(max_length=20) # varchar(20)
password = models.CharField(max_length=20) def __str__(self):
return self.username 1. 执行数据库迁移的命令 python manage.py makemigrations # 保存models变更记录 python manage.py migrate # 把变更记录同步到数据库中 11.ORM 面向对象和关系型数据库的一个映射 映射关系 类 ——》 表 对象 ——》 数据行 属性 ——》 字段 ORM完成的操作: 1. 操作数据表
1. 操作数据 ORM的简单操作: form app01 import models
# 查询所有的数据
models.User.objects.all() # queryset 对象列表
# 查询一个数据
obj = models.User.objects.get(username='alex') # 对象
obj.username # 'alex'
# 查询满足条件的所有数据
models.User.objects.filter(username='alex') # 对象列表 今日内容 图书管理系统 单表的增删改查 1.展示 设计数据表 from django.db import models class Publisher(models.Model):
pid = models.AutoField(primary_key=True) # 主键
name = models.CharField(max_length=32) # varchar(32) def __str__(self):
return self.name 设计URL: from app01 import views urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^publisher/', views.publisher), ] 写函数: from django.shortcuts import render
from app01 import models # 展示出版社列表
def publisher(request):
# 从数据库获取到所有的数据
all_publisher = models.Publisher.objects.all()
# 返回一个包含数据的页面
return render(request, 'publisher.html', {"all_publisher": all_publisher}) 写模板: <table border="1">
<thead>
<tr>
<th>ID</th>
<th>名称</th>
</tr>
</thead>
<tbody>
{% for i in all_publisher %}
<tr>
<td>{{ i.pk }}</td>
<td>{{ i.name }}</td>
</tr>
{% endfor %}
</tbody>
</table>
day60 Pyhton 框架Django 03的更多相关文章
- pyhton框架Django之cookie和session
一,cookie和session的理解 cookies 是浏览器为 Web 服务器存储的一小段信息. 每次浏览器从某个服务器请求页面时,它向服务器回送之前收到的cookies.它保存在浏览器下的某个文 ...
- day64 Pyhton 框架Django 07
day67 内容回顾 视图 1. CBV 定义 from django.views import View class Addpub(View): def get(self,request): sel ...
- day63 Pyhton 框架Django 06
内容回顾 1.装饰器 装饰器:是一个闭包函数,在不改变原函数的代码和调用方式的基础上,给原函数增加功能. def wrapper(func): def inner(*args,**kwargs): # ...
- day62 Pyhton 框架Django 05
内容回顾 1.变量 render(request,'模板文件名',{ k1:v1 }) {{ k1 }} {{ list.0 }} {{ dict.key }} {{ dict.keys }} {{ ...
- day61 Pyhton 框架Django 04
内容回顾 1.django处理请求的流程: 1. 在浏览器的地址栏输入地址,回车发get请求: 2. wsgi模块接收请求: 3. 在urls.py文件中匹配地址,找到对应的函数: 4. 执行函数,返 ...
- day58 Pyhton 框架Django 01
内容回顾 python基础 网路编程 并发编程 数据库 前端 osi7层 tcp/ip 5层模型 应用层 表示层 ...
- python运维开发(十七)----jQuery续(示例)web框架django
内容目录: jQuery示例 前端插件 web框架 Django框架 jQuery示例 dom事件绑定,dom绑定在form表单提交按钮地方都会绑定一个onclick事件,所有查看网站的人都能看到代码 ...
- Web框架——Django笔记
Web框架--Django笔记 MVC和MTV MVC:Model.View.Controller MTV:Model.Template.View Django--MTV 1.创建Django程序 ...
- Python3.5学习十八 Python之Web框架 Django
Python之Web框架: 本质:Socket 引用wsgiref创建web框架 根据web框架创建过程优化所得: 分目录管理 模板单独目录 执行不同函数单独存入一个方法py文件 Web框架的两种形式 ...
随机推荐
- 原生JDK网络编程- Buffer
Buffer用于和NIO通道进行交互.数据是从通道读入缓冲区,从缓冲区写入到通道中的.以写为例,应用程序都是将数据写入缓冲,再通过通道把缓冲的数据发送出去,读也是一样,数据总是先从通道读到缓冲,应用程 ...
- ubuntu18.04 docker安装mongo
问题 在docker中安装的mongo连接不上,报错信息 feng@ubuntu:/etc/docker$ mongo MongoDB shell version v3.6.3 connecting ...
- SpringBoot搭建环境
选择文件新建一个项目 选择:Spring Initializr,其他配置不变,点击下一步 这里一般写包名和项目名,这里我就默认,直接点击下一步 这里选择:Web --> Spring Web ...
- Java实现获取命令行中获取指定数据
执行ipconfig /all获取主机所有网卡信息并分析这些字符串,提取出有效网卡(网卡名称,mac地址,ipv4地址,掩码,网关,dns)将网卡插入HashMap中,key是网卡的名称,value是 ...
- 阿里云前端路线 | CSS快速掌握
1.1什么是CSS 翻译为“层叠样式表”或者“级联样式表”, 简称样式表. 1.2CSS的主要作用 它主要是用来给HTML网页来设置外观或者样式 外观或者样式:HTML网页中的文字的大小.颜色.字体, ...
- 备忘录:SQL SERVER2014 出现:“Cannot find one or more components”
目录 1. 起因 2. 解决方案 3. 备注 4. 参考 2020年9月13日 00:40:09-shanzm 1. 起因 因为卸载vs2015的时候,使用了一个VS2013/2015卸载工具Tota ...
- [程序员代码面试指南]递归和动态规划-数字字符串转换为字母组合的种数(DP)
题意 给一个字符串,只由数字组成,若是'1'-'26',则认为可以转换为'a'-'z'对应的字母,问有多少种转换方法. 题解 状态转移很好想,注意dp多开一位,dp[0]为dp[2]的计算做准备.dp ...
- Java虚拟机栈--栈帧
栈帧的内部结构 每个栈帧中存储着 1.局部变量表(Local Variables) 2.操作数栈(Operand Stack)(或表达式栈) 3.动态链接(Dynamic Linking)(或执行&q ...
- Redis底层数据结构详解
上一篇说了Redis有五种数据类型,今天就来聊一下Redis底层的数据结构是什么样的.是这一周看了<redis设计与实现>一书,现来总结一下.(看书总是非常烦躁的!) Redis是由C语言 ...
- hystrix(5) 延时检测
hystrix在执行命令的同事,会对执行延时进行检测,如果超过设置的延时时间,那么将停止执行,并返回fallback执行结果. if (properties.executionTimeoutEnabl ...