项目需求
系统建模
活动图
普通用户注册后通过前台页面登录,进行浏览、查询、借书、还书等操作。
图书馆管理员通过后台管理界面登录,可直接对数据库进行增删改查操作。
用例图
1.首页
用户可以选择登录或注册。
2.个人中心
用户可以浏览借阅列表,对列表中的书籍进行还书操作。如果逾期,则还需要缴纳罚金。
3.借书页面
用户首先通过输入关键字查询相关书籍,然后对返回列表中的书籍进行借书操作。
后台管理
管理员登录后台后可以查看数据库和日志信息,必要时进行增删改查操作。
类图
在 Django 框架下,所有数据库表模型均继承于 Model 类,所有视图逻辑均继承于 View 类。控制器与用户进行交互,并提供模型数据至视图,实现数据与逻辑的解耦。
模型 | 描述 |
User | 用户表,保存所有的用户信息,包括用户名、姓名、密码(摘要)字段,与 Book 存在多对多关系。 |
Book | 书目表,保存所有的书籍信息,包括书号、书名、作者、出版社、是否可借字段。 |
Borrow | 借阅关系表,保存所有的借阅信息,包括序号、借阅者、所借书籍、借出时间、归还期限字段,其中借阅者和所借书籍分别是参照 User 和 Book 的外键。 |
Log | 日志表,保存所有注册、登录、登出、借书、还书的记录,包括序号、时间、用户、相关书籍、操作字段,其中用户和相关书籍分别是参照 User 和 Book 的外键。 |
视图 | 描述 |
RegisterView | 注册视图,获取新用户的信息进行注册。 |
LoginView | 登录视图,获取用户名和密码进行登录,并将当前用户状态存入 Session。 |
LogoutView | 登出视图,清空 Session,登出。 |
HomeView | 个人中心视图,显示用户的借阅列表,并提供还书按钮。 |
SearchView | 查询视图,通过输入关键字进行查询,返回相关的书籍列表,并提供借书按钮。 |
BorrowView | 借书视图,完成借书逻辑。 |
ReturnView | 还书视图,完成还书逻辑,若逾期则给出缴纳罚金提示。 |