软件工程项目 四则运算表达式生成----3

四则运算题目生成器

软件工程大作业的结对项目–四则运算题目生成器

这是第三阶段的需求分析、概要设计和详细设计

第一,二阶段的链接
软件工程项目 四则运算表达式生成----2

可行性分析和问题定义、PSP表格部分
软件工程项目 四则运算表达式生成----1

第三阶段:网页部分

描述

使用Django架构,版本2.27

网页功能概述

1.希望网页端可以实现用户输入参数从题库中随机生成题目的功能,这个功能因为有数据库的辅助实现起来还是比较简单的;

2.希望可以做到用户管理,用户可以注册,登录,如果忘记密码可以通过预留的邮箱找回密码,这个功能也是可以实现的;

3.希望可以像第三阶段的第一个要求让用户在线答题,并且由于有用户管理的准备工作可以生成用户答题的历史记录,并且记录错题信息

框架
模型

Django中的模型由models.py构成,保存数据,不用频繁更新数据库,用migrate进行数据迁移。views调用models中的表

视图

Django中的视图由views文件构成,做逻辑处理,实现对数据库的增删改查,并将模板的内容渲染到页面上。

控制器

Django的控制器是用的urls文件,调用不同apps中的不同views函数实现对用户输入的控制,跳转到对应的页面,并且向模型发送数据

概要设计和详细设计

用例图

在这里插入图片描述

类图
login的类图

在这里插入图片描述

reset_password的类图

在这里插入图片描述

question的类图

在这里插入图片描述

顺序图

顺序图描述了几个较为重要的功能动态模型,有的只描述了操作正确的情况,对于一些操作中的其他情况没有绘制

登录

在这里插入图片描述

出题

在这里插入图片描述

重置密码

在这里插入图片描述

一段时间后的代码结构大致如下:

.
├── QuestGeneratorWebsite
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── SouSouSou
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── forms.py
│   ├── models.py
│   ├── templates
│   │   └── SouSouSou
│   │       ├── Generator.html
│   │       └── main.html
│   ├── tests.py
│   ├── urls.py
│   └── views.py
├── db.sqlite3
├── generate
│   ├── OriginRequest.py
│   ├── main.py
│   └── solve.py
├── login
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── forms.py
│   ├── migrations
│   ├── models.py
│   ├── templates
│   │   └── login
│   │       ├── login.html
│   │       └── register.html
│   ├── tests.py
│   └── views.py
├── manage.py
├── out.txt
├── question
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── forms.py
│   ├── inti_data.py
│   ├── migrations
│   │   ├── __init__.py
│   ├── models.py
│   ├── templates
│   │   └── question
│   │       ├── Question.html
│   │       └── Question_list.html
│   ├── tests.py
│   ├── urls.py
│   └── views.py
├── reset_passowrd
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── forms.py
│   ├── models.py
│   ├── templates
│   │   └── reset_passowrd
│   │       ├── _message.html
│   │       ├── confirm.html
│   │       ├── pass.html
│   │       └── reset.html
│   ├── tests.py
│   ├── urls.py
│   └── views.py
└── templates
    ├── base.html
    ├── footer.html
    └── top.html

项目的大致设置settings.py里包含项目里的app 模板 和static静态文件的路径:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'login',
    'captcha',
    'question',
    'reset_passowrd',
    'SouSouSou',
]


TEMPLATES = [
    {
   
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')]
        ,
        'APP_DIRS': True,
        'OPTIONS': {
   
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                <
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值