python使用django搭建简单网页(Python后台开发Django的教程详解启动)
python使用django搭建简单网页
Python后台开发Django的教程详解启动django版本为:2.1.7
python的web框架,mtv思想
mvc
model(模板文件,数据库操作) view(视图模板文件 )controller(业务处理)
mtv
model(模板文件,数据库操作) template(视图模板文件) view(业务处理)
安装及访问
安装
pip3 install django
创建目录
如win:在需要创建目录的文件夹按住shift+鼠标右键打开命令行,创建dongjg工程目录
c:\users\东东\appdata\local\programs\python\python37\scripts\django-admin.exe startproject dongjg
开启服务
其中manage.py需对应工程目录
如果网站需要外部访问还需在工程目录的settings.py文件中设置【allowed_hosts = ["*"]】
python manage.py runserver 0.0.0.0:8000
访问测试
http://127.0.0.1:8000/
目录介绍
工程目录结构
无app的测试页面
在urls.py中添加简单的测试页面
访问:http://127.0.0.1:8000/dong
|
from django.contrib import admin from django.urls import path #新建处理方法 from django.shortcuts import httpresponse def homex(requestx): return httpresponse( "东小东【dongxiaodong】" ) urlpatterns = [ path( 'admin/' , admin.site.urls), path( "dong" ,homex), #添加url对应关系 ] |
创建app及基本操作
可以实现多个模块效果,如后台管理、用户登入等
python manage.py startapp dongapp2
app的目录结构
migrations文件夹 #数据库操作记录(表结构修改记录)
admin.py #django的后台管理页
models.py #创建数据库结构
apps.py #当前app的配置文件
views.py #业务代码
tests.py #单元测试
路由对应方法(fbv):
在dongapp2/ views.py
|
from django.shortcuts import httpresponse def homex(requestx): return httpresponse( "东小东【dongxiaodong】" ) |
在urls.py
|
from django.contrib import admin from django.urls import path from dongapp2 import views urlpatterns = [ path( 'admin/' , admin.site.urls), path( "dong" ,views.homex), #添加url对应关系 ] |
路由对应类(cbv)
在dongapp2/ views.py
|
from django.views import view from django.shortcuts import httpresponse from django.shortcuts import render #导入 class dongclass(view): def get( self ,requestx): #当请求为get时进入 #return httpresponse(requestx.get.get("gdax","无数据")) return render(requestx, "loginx.html" , { "dongx" : 12 }) # 返回文件 def post( self ,requestx): #当请求为post时进入 return httpresponse(requestx.post.get( "user" , "无数据" )) |
在urls.py
path("cdong",views.dongclass.as_view()),
静态文件(static)
存放一些css样式、图片、js代码等
外部访问访问:http://127.0.0.1:8000/static/img/an.jpg" alt="python使用django搭建简单网页(Python后台开发Django的教程详解启动)" border="0" />
在setting.py中,设置静态文件存放位置
在模板html文件中使用
|
<link rel = "stylesheet" href = "static/dong.css" rel = "external nofollow" > |
数据获取相关
表单提交测试:
在setting.py中注释掉下面一句,即可通过表单添加【action="dong"】进行数据提交,如果不注释需参考csr保护
获取访问数据
|
#控制台输出所有的请求信息 for k,v in requestx.environ.items(): print (k, "----->" ,v) print ( "你的设备基本信息:" ,requestx.environ.get( "http_user_agent" , "w" )) print ( "你的ip地址:" ,requestx.environ.get( "remote_addr" , "w" )) xx = requestx.path_info #获取url,如http://127.0.0.1:8000/x1/x2/xxxxcd3,输出:/x1/x2/xxxxcd3 methodx = requestx.method #得到访问方式,输出:get post #userx1=requestx.post["user"] #获取post值,如果name不存在会报错 userx2 = requestx.post.get( "user" , "xxx" ) #获取post值,如果不存在则输出xxx |
响应头设置
|
# 本地页面跳转 from django.shortcuts import redirect # 导入 retx = redirect( "dong/" ) # 返回文件,并匹配值 from django.shortcuts import render #导入 retx = render(requestx, "loginx.html" ,{ "dongkk1" : "替换值1" , "dongkk2" : "替换值2" }) #返回字符串 from django.shortcuts import httpresponse retx = httpresponse( "东小东【dongxiaodong】" ) #设置响应头 retx[ "tttt" ] = "tttvvvvv" return retx |
复选框测试:
获取数据,获取数据到一个列表中
listx=requestx.post.getlist("boxd")
复选框
|
< input type = "checkbox" name = "boxd" value = "1xx" >选项 1 < input type = "checkbox" name = "boxd" value = "xx2" >选项 2 …….. |
文件上传
|
fileobjx = requestx.files.get( "dongfile" ) #得到文件对象 filenamex = fileobjx.name #得到文件名 filesize = fileobjx.size #文件大小 f = open ( "static/img/" + filenamex, "wb" ) #创建新文件保存数据 for datax in fileobjx.chunks(): #接收数据,可以不用写.chunks(),默认会调用 f.write(datax) f.close() |
总结
以上所述是小编给大家介绍的python后台开发django的教程详解(启动),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对开心学习网网站的支持!
原文链接:https://www.cnblogs.com/dongxiaodong/p/10496525.html
- 用mysql语句写python学生管理系统(Python基于mysql实现学生管理系统)
- python实现简单加密(Python 隐藏输入密码时屏幕回显的实例)
- python 游戏开发实例(python实现诗歌游戏类继承)
- python批量创建字典(Python编写合并字典并实现敏感目录的小脚本)
- python列出文件夹下所有文件(python批量修改文件夹及其子文件夹下的文件内容)
- python创建hbase命名空间(python使用phoenixdb操作hbase的方法示例)
- python如何获取列表值(Python中按键来获取指定的值)
- python转pdf教程(Python实现将HTML转成PDF的方法分析)
- python获取企业微信信息(通过shell+python实现企业微信预警)
- python基本数据结构(浅谈Python编程中3个常用的数据结构和算法)
- python模块使用方法(详解python的argpare和click模块小结)
- python自动解密(python实现移位加密和解密)
- pythontime模块有哪些(Python3.5内置模块之time与datetime模块用法实例分析)
- pythonfor循环如何遍历嵌套列表(在Python中,不用while和for循环遍历列表的实例)
- python基本运算符编程(对Python3 * 和 ** 运算符详解)
- python最简单实例(Python文件打开方式实例详解a、a+、r+、w+区别)
- 2019年外媒秋季新番动画角色CP排行榜,桐人和爱丽丝落榜(2019年外媒秋季新番动画角色CP排行榜)
- 新一小兰领衔 盘点动漫中的那些 远距离恋爱情侣(盘点动漫中的那些)
- 大事件 合肥四中火了(大事件合肥四中火了)
- 翼龙贷组织出借人调研 感受鄱阳 借 来的致富路(翼龙贷组织出借人调研)
- 2023新国风戏曲教育寒假集训班汇报演出《戏娃闹元宵》图文报道(2023新国风戏曲教育寒假集训班汇报演出戏娃闹元宵图文报道)
- 九儿《狐踪谍影》出演热血女特警,戏份杀青受关注(九儿狐踪谍影出演热血女特警)
热门推荐
- python怎样读取mysql数据(使用Python将Mysql的查询数据导出到文件的方法)
- mysql经典问题(MySQL null的一些易错点)
- jquery中find()与filter()的区别
- sql server 2016配置管理(SQL Server 2016 配置 SA 登录教程)
- python中怎么查看函数的用法(Python中函数的基本定义与调用及内置函数详解)
- phpstudy不解析php代码(phpstudy伪静态设置的问题)
- nginx怎么用ssl证书(制作能在nginx和IIS中使用的ssl证书)
- docker菜鸟教程(Docker简单入门使用教程)
- filezillaserver怎么配置(解决FileZilla_Server:425 Can't open data connection 问题详解)
- php添加数据到mysql数据库(PHP通过代码连接XAMPP数据库及MySQL数据库方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9