01 图书管理系统
创建虚拟环境
conda?create?--name?django4?python=3.11.7y
激活虚拟环境
conda?activate?django4
安装Django
pip?install?django==4.2.11
创建项目
django-admin?startproject?c02_library_project
启动项目
cd?.\c02_library_project\
python?manage.py?runserver
项目结构
__init__.py?是Python将目录视为包的一种方式;它是空的
settings.py?包含我们项目的所有配置
urls.py?控制顶层URL路由
wsgi.py?代表web服务器网关接口,帮助Django服务于最终的web页面
manage.py 执行各种Django命令,比如运行本地web服务器或创建一个新的应用程序。
同步数据库
python?manage.py?makemigrations
python?manage.py?migrate
创建第一个应用
python?manage.py?startapp?books
每个应用都会包含如下文件:
__init__.py
admin.py?是Django内置管理应用的配置文件
apps.py?是应用程序本身的配置文件吗
migrations/?目录存储数据库更改的迁移文件
models.py?是我们定义数据库模型的地方吗
tests.py?是为了我们的应用程序特定测试
views.py?我们在哪里处理我们的web应用程序的请求/响应逻辑
使用vscode打开项目
code?.
配置应用
应用创建好了以后,需要去settings.py中配置应用,这样才能够被Django识别到:
创建图书模型
在books/models.py中新增图书模型:
from?django.db?import?models
class?Book(models.Model):
"""图书模型"""
title?=?models.CharField(max_length=250)
subtitle?=?models.CharField(max_length=250)
author?=?models.CharField(max_length=100)
isbn=models.CharField(max_length=13)
def?__str__(self)?->?str:
return?self.title
创建完毕以后迁移模型:
python?manage.py?makemigrations
python?manage.py?migrate
创建系统管理员
python?manage.py?createsuperuser
将图书模型注册到后台
修改books/admin.py,将Book图书模型注册到后台:
登录后台
重启服务:
python?manage.py?runserver
登录后台:http://127.0.0.1:8000/admin
之后在后台中找到图书,新增基本图书。
列表视图
修改books/views.py,添加一个BookListView,用来展示图书列表:
配置路由
有了视图以后,还需要配置路由,先配置urls.py顶层路由:
接着,新增books/urls.py,配置应用路由:
from?django.urls?import?path,?include
from?.?import?views
app_name?=?'books'
urlpatterns?=?[
path("",?views.BookListView.as_view(),?name='list'),
]
添加模板代码
最后,我们新建books/templates/books/book_list.html,用来显示HTML代码。
<meta?charset="UTF-8">
<title>图书列表</title>
{%?for?book?in?object_list?%}
<ul>
<li>标题:{{ book.title }}</li>
<li>副标题:{{ book.subtitle }}</li>
<li>作者:{{ book.author }}</li>
<li>ISBN:{{ book.isbn }}</li>
</ul>
{%?endfor?%}
此时,重启服务,再次访问首页,就能够看到刚才在后台管理界面中添加的图书了。你可以多添加几本图书再试试。
领取专属 10元无门槛券
私享最新 技术干货