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')
测试方法效果:
~~ 以上~~