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框架的两种形式 ...
随机推荐
- 把Employees显示在页面上
项目代码下载:https://files.cnblogs.com/files/xiandedanteng/gatling20200429-1.zip 需求:从后台DB取出雇员数据,显示在前台页面上: ...
- 使用Java7提供的WatchService给目录添加新建文件监控
程序: import java.io.IOException; import java.nio.file.FileSystems; import java.nio.file.Path; import ...
- 20190923-06Linux文件权限类 000 014
文件属性 Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限.为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定.在Linux ...
- hadoop不能互相访问和linux防火墙守护进程
前言——作为装过几次集群的菜鸟,对于hadoop集群的安装还是比较有心得的:只要配置文件够好,集群配置就非常容易,否则也容易出现莫名其妙的问题!总结了一份3台机器搭建较完好的集群的一份配置文件. 在我 ...
- python守护线程t.setDaemon(True)
守护线程是守护主线程 t.setDaemon(True),调用函数里面存在等待时间时,只要设置了守护线程,函数中等待时间下面的代码都不会再执行
- [剑指Offer]30-包含min函数的栈
题目 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1)). 题解 辅助栈记录当前最小值. 代码 import java.util.Stack; pub ...
- k8s通过service访问pod(五)
service 每个 Pod 都有自己的 IP 地址.当 controller 用新 Pod 替代发生故障的 Pod 时,新 Pod 会分配到新的 IP 地址.这样就产生了一个问题: 如果一组 Pod ...
- 永久激活(idea,pycharm等推荐使用)
二.永久激活(推荐使用)激活码激活总是过期,永久激活后,一劳永逸,不需要每次都在网上搜索激活码了. 1.下载激活插件:jetbrains-agent.jar(关注公号[吾非同]回复pycharm获取) ...
- vue移动端记录列表滚动如何快速找到是哪个元素产生的滚动
使用下面的代码粘贴到调试工具中运行一下,然后滚动页面,就可以看到是哪个元素产生的滚动了 function findscroller(element) { element.onscroll = func ...
- Processing 网格(棋盘格)无限偏移纹理动画
过火 再度出击!这次我们要玩得更火一点---把静帧变动画.没错,将棋盘格动起来!看一下效果: 这是一个经典的无限偏移动画,在很多2d横版射击游戏中都会采用的技术.如何在Processing中实现,有两 ...