收藏 分销(赏)

PythonWeb开发基础教程 第9章 Python在线题库.pdf

上传人:曲**** 文档编号:225569 上传时间:2023-03-08 格式:PDF 页数:26 大小:572.77KB
下载 相关 举报
PythonWeb开发基础教程 第9章 Python在线题库.pdf_第1页
第1页 / 共26页
PythonWeb开发基础教程 第9章 Python在线题库.pdf_第2页
第2页 / 共26页
PythonWeb开发基础教程 第9章 Python在线题库.pdf_第3页
第3页 / 共26页
PythonWeb开发基础教程 第9章 Python在线题库.pdf_第4页
第4页 / 共26页
PythonWeb开发基础教程 第9章 Python在线题库.pdf_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、Python Web开发基础教程(Django版)第9章Python在线题库本章主要内容:项目设计项目实现数据管理实现试卷导出9.1项目设计本节主要内容功能分析数据库设计9.1.1功能分析 Python在线题库主要具有试题管理、试卷模板定制和试 卷导出等功能。试题管理:具有试题管理权限的用户可以添加、修改和 删除题库中的试题。试卷定制模板:具有试卷定制权限的用户可以设置各种 类型的试题在试卷中的数量和分值,后台根据设置随机 抽题生成试卷。试卷导出:预览试卷内容、下载试卷Word文件。9.1.2数据库段计 Python在线题库主要包含4个数据表:试题类型表、试题表、试卷模板表和试卷内容表。,试题

2、类型表:保存试题类型名称。参照全国计算机等级考试二级Python考试大纲,试题类型包 括单项选择题、基本操作题、简单应用题和综合应用题。试题类型表包含试题类型ID和试题类 型名称字段。,试题表:保存试题。试题表包含试题ID、试题题干、试题选项、试题图片和参考答案等字段。仅单项选择题有试题选项,每小题的选项用JSON字符串表示。试题表与试题类型表之间是多 对一关系,一种试题类型对应多道试题。试卷模板表:保存一套试卷的试题设置。试卷模板表包含试卷模板ID、模板名称、制卷时间、妻哒选择题数量、单项选择髅分值;拳主展作题数曩工基本操作题分值、简单应用题数量、简 单应用题分值、综香应用题薮量和综合应甭题

3、分值彗字段。,试卷内容表:保存根据试卷模板随机生成的试卷,包含试卷内容ID、试卷名称和试题ID列表。试题ID列表是由随机抽取的试题的ID组成的列表。试卷内容表和试卷模板表之间是多对一关系,一个试卷模板可以随机生成多套试卷。项目中用户管理功能使用默认的Admin站点来实现,相应的模型使用Django默认的用户模型和 权限模型。92项目实现本节主要内容 创建项目和应用 创建模型和数据库 注册模型 创建添加和修改试题对象模板 创建添加和修改试卷内容对象模板 实现随机抽取试题9.2.1创建项目和应用,将题库项目命名为chapterg,在项目中创建应用ItemPool,在应 用中完成项目的相关坊能卖现。

4、创建项目和应用的具体操作步骤如下。(1)执行下面的命令创建项目ch叩tergD:django-admin startproject chapterg(2)执行下面的命令,在项目中创建应用ItemPool。D:cd chaptergD:chaptergpython manage.py startapp ItemPool9.2.2创建模型和数据库具体操作步骤如下:(1)用Visual Studio打开项目主文件夹ch叩terg。(2)修改应用ItemPool中的models.py文件,为项目的试 题类型表、试题表、试卷模板表和线卷内容表等定义模型(3)修改项目配置文件settings也,注册Ite

5、mPool应用和 中文中间件,设置中文语言、时性和媒体资源目录等。(4)在Windows命令窗口执行命令完成数据库创建。(5)创建Admin站点的超级管理员账户。9.2.3注册模型注册模型是实现本例的关键环节,该操作在ItemPool应用的 admin.py文件中完成。i.修改站点标题 本例用自定义标题代替Admin站点的默认标题。#替换站点默认标题 admin.site.site_title二Python在线题库后台管理”#定义站点标题(显示在浏览器标题 栏)一 admin.site.site_header=Python在线题库“#定义站点页面顶部标题-2.注册试卷模板模型 在Admin站点

6、中,试卷模板模型使用默认管理模板,只需要完成注册即可,注册代码如下。from django.contrib import admin from.models import*admin.site.register(paperTemplate)#按默认方式注册模型 3.注册试题类型模型 注册代码如下。,admin.register(itemType)#用下面的自定义类注册试题类型模型,class itemTypeAdmin(admin.ModelAdmin):list_display=id,z,name,#设置在模型数据浏览页面中显示的字段 list_editable=namel#允许在模型数据浏

7、览页面中修改字段数据 4注册试题模型 注册代码如下。,admin.register(testltem)class testltemAdmin(admin.Model Admin):,list_display=,idl/,type,/lquestion/,options/item-pic,answer list_filter=type_name1,ordering=type,/,icl,search_fields=question add_form_template=,change_testltem.html,change_form_template=change_testltem.html,f

8、ieldsets=(,(None,fields:(type/question/options/picture/answer)#注册试题模型#设置过滤器字段#设置排序字段#设置搜索字段,在页面中显示搜索框#设置添加数据表单模板#设置修改数据表单模板#定义添加和修改页面中的字段及其先后顺序),)5.注册试卷内容模型注册代码如下。admin.register(paperContent)#注册试卷内容模型class paperContentAdmin(admin.Model Admin):list_display=,id,/,name,/,content,/,template ordering=,id

9、/,name,/,templateadd_form_template=,paperContent.html1 change_form_template=paperContent.htmrfieldsets=(None,fields:(,template,/,name,/,content)1),)9.2.4创建流加和修改试题对象模板Admin在添加和修改对象时,通常使用同一个模板。本例中,添加和修改试题对象时,使用change_testltem.html 模板9.2.5 创建流加和修改试卷内容对象模板在添加和修改试卷Q容对象时,使用 paperContent.html 模板9.2.6 实现随机抽

10、取试题实现随机抽取试题的视图代码如下9.3数据管理本节主要内容试题类型模型管理试题模型管理试卷模板模型管理试卷内容模型管理9.3.1 试题类型模型管理 选择试题类型来修改|Python左X+C 127.0.0.1:8000/admin/ltemPool/itemtype/?o=1*Python在线题库欢迎,ADMIN.查看站点/修改密码/注销首页 Itempool 试题类型选择试题类型来修改动作-执行 4个中0个被选 ID 试题类型名称1 单项选择题基本操作题3 AU.r-J-r 日 H9.3.2试题模型管理0 选择试题来修改|Python在线:x+X-C O 127.0.0.1:8000/a

11、dmin/ltemPool/tostitt*m/?typc_name=BEgPython在线题库欢迎,ADMIN/看站点/修改在码/注哨首页Itempool试照选择试题来修改Q 搜索 80条结录.(启共93)执行 80个中。个被选ID 2-g类型 1-iitSUR干 7 单项选择题 关于数据的存储结构,以下选项描述正确的是8 单项选择题 关于线性链表的描述,以下选项中正确的是过滤器试施2项 试2HIQ片伊:数据所占的存储空间里,B:数据在计箕机 无图片 中的顺序存储方式C:数据的逻辑结均在计算机中的表示D:存储在外存中的数据)伊:存储空间不一定连续,目前件元素一定存无图片 储在后件元素的前面;

12、B:存储空间必须连续,且削件元素一定存储在后件元素的削面;C:存储空间必须连续,且各元素的存储顺序以试题类型名称领单项选择题基本操作建简单应用卷综合应用题9.3.3试卷模板模型管理 选择试题模板来修改|Python;X+X C 127.0.0.1:8000/admin/ltemPool/papertemplate/Python在线题库首页 Itempool选择试题模板来修改欢迎,ADMIN查看站点/修改围码/汪靖口试题模板+执行 1个中0个被选 用S根板口 2019期中溜试1试题模板9.3.4试卷内容模型管理 选择试题内容来修改|Python不X 4-C。127.0.0.1:8000/admi

13、n/ltemPool/papercontent/X 4:Python在线题库欢迎,ADMIN.查看站点/修改空码/注销首页 Itempool 试题内容选择试题内容来修改动作-J 执行 3个中0个波选ID1 试卷名称2 试题ID列表试卷模板 31试卷131,32,37,28,39,48,29,52,85,56,30,83,59,86,17,67,46,45,27,65,82,13,72,34,47,43,22,81,77,62,24,68,44,84,33,18,58,54,11,25,87,93,89,97,94,922019期中测试21鳍252,55,34,86,50,38,70,45,36

14、,80,18,58,26,13,17,71,44,9,75,35,81,54,57,16,63,79,59,39,8,25,76,31,46,83,84,30,64,53,20,22,88,93,87,98,97,9212019期中测试9.4实现试卷导出本节主要内容 基本思路 定义试卷导出页面模板 定义试卷导出相关视图 测试试卷导出页面9.4.1基本思路试卷导出实现的基本思路如下:1.在试卷导出页面中显示现有的试卷列表。2.用户从试卷列表中选择要导出的试卷时,在页面中显示试卷预览 内容。试卷预览内容为HTML格式,直接在浏览器中查看。3.在生成试卷预览内容的同时,将试卷写入Word文件供用户下载。4.获得试卷预览内容后,用户可在页面中请求试卷下载链接。试卷 下载为Word文件。5.试卷导出页面通过Ajax完成向服务器发起请求,服务器端用 Django视图完成处理。9.4.2 定义试卷导出页面模板9.4.3 定义试卷导出相关视试卷导出页面需要3个视图:,显示试卷导出页面视图生成试卷预览内容视图生成下载地址视图。9.4.4浦试试卷导出页面

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 考试专区 > 人力资源管理师考试

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服