4、第十 - WEB开发进阶 - Django框架的介绍及应用
Web Django 框架安装、调用使用介绍。
Django的安装、及目录的结构。
#创建Django 工程 Django-admin startproject [工程名字] mysite - mysite #对整个程序进行配置, - init - settins #配置文件 - url #URL对应关系 - wsgi #遵循WSGI规范,uwsgi + Nginx - manage.py #管理Django程序: - python manage.py - python manage.py startapp xxx - python manage.py makemigrations - python manage.py migrate # 运行Django功能(注意环境变量) python3 manage.py runserver 127.0.0.1:8001
Django目录介绍应用,app 创建。一般会在Django项目下创建,命令行直接可以创建:python3.5 manage.py startapp cmdb
PyCharm 上也可以操作:如下图

目录工具解析:
APP - __init__.py 文件引导路径 - migrations 数据库记录,只是用来记录表结构 - admin Django提供的后台管理 - apps 当前app的配置 - models ORM,写制定的类的。通过命令可创建数据库结构 - tests 单元测试 - views 业务逻辑代码(写代码的地方) admin -- 后台管理程序 - 登录 - 权限划分
案例:为app能够Django项目工程下响应,模拟开发一个用户登录的页面。
1、在django_1 工程项目目录下,配置settings.py文件,找到 INSTALLED_APPS,把创建的app添加上,如下:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'cmdb' #新添加的app名称
]
2、在django_1 工程项目目录下,配置settings.py文件,找到TEMPLATES,把 DIRS tempaltes 路径描述好,如下:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR,'templates')], #py3中估计要手工添加、Py2应该不用
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
在templates 目录下,编写登录模板 login.html,如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
label{
width: 80px;
text-align: right;
display: inline-block;
}
</style>
</head>
<body>
<form action="/login" method="post">
<p>
<label for="username">用户名:</label>
<input id="username" type="text" >
</p>
<p>
<label for="password">密码:</label>
<input id="password" type="password">
<input type="submit" name="提交">
</p>
</form>
</body>
</html>
3、设置URL访问对应关系:找到django_1下,urls.py 添加如下:
from django.urls import path
from cmdb import views
urlpatterns = [
path('admin/', admin.site.urls),
path(r'login/',views.login) #添加对应的URL关系
]
4、配置app的处理逻辑,在cmdb的app项目目录下,找到对应的views.py 进行配置。如下:
from django.shortcuts import render
def login(request):
#第一种:以前打开文件的方式
# f = open(b'templates/login.html','rb',encoding="utf-8")
# data = f.read()
# f.close()
# return HttpResponse(data)
#第二种:django中自带render模式,简化代码
return render(request,'login.html')
测试方法效果:

~~ 以上~~
人有傲骨终不贱,脚踏实地见真章;
超出预期为工作,价值体现显能力。
浙公网安备 33010602011771号