Djiango----图书人物管理系统(一)
1 Django项目的创建和运行
(1)创建项目
(2)启动服务器:
python manage.py runserver
- 在浏览器端测试,服务器成功启动
2 启用后台Admin 站点管理
站点分为“内容发布(后台管理)”和“公共访问(前台管理)”两部分:
- “内容发布”的部分负责添加、修改、删除内容,开发这些重复的功能是一件单调乏味、缺乏创造力的工作。 Django会根据定义的模型类完全自动地生成管理模块。Django 框架中有一个非常强大的应用功能: 自动管理界面。常被Web平台管理者使用,去管理整个Web平台。默认情况下,在 settings.py 配置文件中INSTALLED_APPS包含以下应用程序,为了后续的开发,默认这些应用程序都是包含在里面的
连接 MySQL 数据库配置:
在 settings.py 文件中,通过DATABASES项进行数据库设置
Django 支持的数据库包括: sqlite 、 mysql 等主流数据库
Django 默认使用 **SQLite** 数据库
(1) 数据库迁移
- 使用这些 Django 自带的应用程序,需要我们在数据库中创建一些数据表对应,然后才能使用它们:
python manage.py makemigrations
在终端执行命令时出错,原因是缺少SQLlite的驱动文件
- 安装sql的驱动
- 测试:查看主setting.py文件
- 数据库的迁移:
python manage.py migrate
(2)创建管理员用户:python manage.py createsuperuser
- 测试:
http://127.0.0.1:8000/admin
(3)管理界面本地化
- 编辑 settings.py 文件,设置编码、时区
- 测试:刷新页面查看汉化是否更改成功
3 创建第一个应用程序
Django 自带一个实用程序,可以自动生成应用程序的基本目录结构,因此您可以专注于编写代码而不是创建目录。
在一个项目中可以创建一到多个应用,每个应用进行一种业务处理
python manage.py startapp bookApp
(1)编写第一个视图函数
- 编辑
bookApp/views.py
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
def index(request):
print("用户请求",request.path)
return HttpResponse('首页信息')
(2)路由规则
url() 函数介绍:
-
Django url() 可以接收四个参数,分别是两个必选参数: regex 、 view 和两个可选参数:kwargs 、 name 。
regex : 正则表达式,与之匹配的 URL 会执行对应的第二个参数 view。 view : 用于执行与正则表达式匹配的 URL 请求。 kwargs : 视图使用的字典类型的参数。 name : 用来反向获取 URL。
-
查看setting.py文件:
- 根据主配置文件settings 可知路由查找的主文件的urls.py ,因此在该文件添加一条 url 规则(子应用的urls)
- 创建bookApp 目录中的urls.py,编写子路由规则
from django.contrib import admin
from django.urls import path, include
from bookApp.views import index
urlpatterns = [
path('admin/', admin.site.urls),
## 当用户访问的url地址为/book, 请访问bookApp.urls这个url配置文件进行匹配并执行对应 的视图函数
path('book/',include('bookApp.urls')),
]
- 编辑子视图文件:
bookApp/views.py
from django.shortcuts import render
# Create your views here.
from django.http import HttpResponse def index(request):
return HttpResponse('<h1 style="color:red">图书管理系统</h1>')
(3) 效果展示(修改文件时不需要重启服务器,新建或者删除文件时需要重启服务器)
- 启动服务器:
python manage.py runserver
- 在浏览器端测试:
http:// 127.0.0.1:8000/index/