python+django中国古诗词古典文学网站

文末获取资源,收藏关注不迷路

前言

信息技术的发展带来了大量的数据内容,在这些数据中,想要找到自己需要的只有通过搜索引擎。如今,通过百度去查找信息成为大众的首选,然而在经济利益的驱动下,许多百度来的信息都是商业内容,很难找到真实有用的实际信息。在中国古诗词学习中,可以弘扬古诗词传统文化,增加个人的修为。因此,本文研究的中国古诗词网站,在本网站中,用户可以主动的发布古诗词咨询问题信息,获取别人对该古诗词问题的解答和讨论,从而获取想要的结果,提高了获取信息的手段和效率,同时加强了用户之间的相互交流沟通,促进了古诗词信息化的发展。
本文先提出了开发中国古诗词网站的背景意义,然后通过功能性和非功能性分析阐述本系统的需求,然后从功能设计和数据库设计两方面进行系统的设计建模。在技术实现部分采用了Python作为开发后台的编程语言,数据库选择MySQL。最后进行了代码的编写,并说明了实现流程。最终,通过软件测试来验证中国古诗词网站的功能要求。综合表明,本中国古诗词网站满足了古诗词学习的基本业务,帮助用户及时了解古诗词相关内容。

一、研究背景

目前中小学生对于古诗词的学习主要来源于课本,对于古诗词的理解主要来源于老师的讲解和学生自己上课所记录的笔记,学生可能会出现漏记忘记的现象,这时学生就只能通过询问老师或者上网搜索来获取缺失笔记的地方。本项目利用网络的访问便捷性以及中小学老师教授古诗词的思想,将学习中的理论知识和具体实践结合,利用编程语言、某些中间件和某些存储资源开发出基于web的中国古诗词的设计与实现网站。既可以供给学生巩固或复习古诗词知识,也可以为学生提供拓展知识的地方。
线上教育在我国已经有了一定的发展规模,虽然发展缓慢,但仍保持上升势态。国内提出的代表线上教育发展方向的线上教育模式是基于网络的教育模式,在网络学习的环境得以最大限度地发挥学习者的自主性、积极性,既可以进行个别化学习,又可以进行协作学习,这种教育模式比较注重学习者个人的需要,又因为近期疫情的影响更加突出了线上教育的重要性。
中国古诗词网站为用户提供在线信息发布服务,系统包括前台和后台。

前台用户可以先进行注册,填写个人的基本信息提交到后台,后台把数据保存到数据库。管理员对会员的信息进行验证后,会员通过验证后的用户名和密码进行登录,登录之后发布古诗词问题。查看有关互联网/网络相关的古诗词,行政法规,部门规章信息。也可以对这些古诗词具有经验或者技能的用户提供解答或者评论服务,也可以和其他用户进行交流,同时可以查看关于本系统相关的公告信息。点开我的功能模块,修改个人信息,重新登录,查看我的收藏等功能。
管理员是后台的管理者,对用户提交的古诗词咨询进行回复,如果发布的是广告或者违规的内容进行删除,也可以要求会员进行修改后重新提交,管理员对古诗词分类进行管理,系统不限于行政法规,部门规章,也可以添加别的类别,管理员还可以对古诗词信息进行管理,发布信息公告推送给前台。

二、研究意义

本文研究了中国古诗词网站,通过该系统,用户可以主动的发布古诗词问题,获取别人对该古诗词问题的解答和讨论,从而获取想要的结果,提高了获取古诗词信息的手段和效率,同时加强了用户之间的相互交流沟通,促进了古诗词信息化的发展。
中国古诗词网站是当前一种流行的获取信息的方式,该平台建立了用户与用户之间的古诗词沟通渠道,提供了一个可以交流古诗词的平台。在互联网时代,大家逐渐认识到,通过Internet可以快速的传播信息、交流知识、获取需求。现代信息技术逐渐渗入到大家生活中,过去网站上的一些论坛和留言板,很难形成专业化的古诗词平台,随着时间的推移,这些论坛逐渐被用户所遗忘。
本中国古诗词网站针对的范围广,使用的用户群体大,无论是行业骨干还是部门领导,或者普通的学生或者工作者都可以发布古诗词信息,可回答别人的古诗词问题,从而提供可以学习交流的古诗词平台。
中国古诗词网站是一个开放的、公平的系统。通过这个平台,大家可以更方便、更快捷的获取到需要的古诗词信息资源。平台的使用相比较于专业的图书馆和论坛,资源更加的丰富,发挥了群体的力量,范围广。丰富了学习和生活。在大数据信息化时代,信息的存储和传播有着非常重要的意义,打破了获取知识的时间和地点的限制,提高了大家的知识水平和素质,对于建设国家古诗词信息化具有更重要的深层次的意义。
本文研究的中国古诗词网站,根据现实的实际需求,提供用户发布信息的功能,借助信息推荐技术,还可以为用户发送需要知道的信息内容,节省浏览时间。信息推荐是大数据时代重要的功能,提高了系统平台的实际价值。另外通过信息安全技术手段对用户信息进行加密,并保证数据传输过程中的安全,提高系统数据整体安全能力。

三、主要使用技术

环境需要
1.运行环境:python3.7/python3.8。
2.IDE环境:pycharm+mysql5.7;
3.数据库工具:Navicat11
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
技术栈
后端:python+django
前端:vue+CSS+JavaScript+jQuery+elementui

使用说明
使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
使用PyCharm 导入项目,修改配置,运行项目;
将项目中config.ini配置文件中的数据库配置改为自己的配置,然后运行;
运行成功后,在浏览器中输入:http://localhost:8080/项目名

四、研究内容

在这里插入图片描述
古诗词分类包括古诗词的ID和古诗词的名称、类别。常见的有关叙事诗、抒情诗、送别诗、边塞诗、山水田园诗、怀古诗(咏史诗)、咏物诗等类别,可以通过后期进行添加扩展。
古诗词是本系统的重点功能,前台用户登录后发布古诗词,选择对应的分类,上传图片,其中图片是保存在后台端,数据库记录对应的图片链接地址,在资源类信息保存中还可以通过二进制进行保存。本系统为了降低数据库的负荷,把图片以文件格式进行存储,这样既减轻了后台的数据库的存储,也提高了图片数据传输的速度。会员发布后,在管理端对数据进行管理,删除一些违法违规的记录。没有删除的记录将在前台首页进行展示,用于其他会员查看。会员可以通过古诗词的分类进行搜索,不同分类对应了不同的古诗词。也可以通过关键字进行检索。古诗词还具有点赞和收藏功能。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、核心代码

# coding:utf-8
__author__ = "ila"

from django.http import JsonResponse

from .users_model import users
from util.codes import *
from util.auth import Auth
import util.message as mes


def users_login(request):
    if request.method in ["POST", "GET"]:
        msg = {'code': normal_code, "msg": mes.normal_code}
        req_dict = request.session.get("req_dict")
        if req_dict.get('role')!=None:
            del req_dict['role']
        datas = users.getbyparams(users, users, req_dict)
        if not datas:
            msg['code'] = password_error_code
            msg['msg'] = mes.password_error_code
            return JsonResponse(msg)

        req_dict['id'] = datas[0].get('id')
        return Auth.authenticate(Auth, users, req_dict)


def users_register(request):
    if request.method in ["POST", "GET"]:
        msg = {'code': normal_code, "msg": mes.normal_code}
        req_dict = request.session.get("req_dict")

        error = users.createbyreq(users, users, req_dict)
        if error != None:
            msg['code'] = crud_error_code
            msg['msg'] = error
        return JsonResponse(msg)


def users_session(request):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code,"msg":mes.normal_code, "data": {}}

        req_dict = {"id": request.session.get('params').get("id")}
        msg['data'] = users.getbyparams(users, users, req_dict)[0]

        return JsonResponse(msg)


def users_logout(request):
    if request.method in ["POST", "GET"]:
        msg = {
            "msg": "退出成功",
            "code": 0
        }

        return JsonResponse(msg)


def users_page(request):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code, "msg": mes.normal_code,
               "data": {"currPage": 1, "totalPage": 1, "total": 1, "pageSize": 10, "list": []}}
        req_dict = request.session.get("req_dict")
        tablename = request.session.get("tablename")
        try:
            __hasMessage__ = users.__hasMessage__
        except:
            __hasMessage__ = None
        if __hasMessage__ and __hasMessage__ != "否":

            if tablename != "users":
                req_dict["userid"] = request.session.get("params").get("id")
        if tablename == "users":
            msg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \
            msg['data']['pageSize'] = users.page(users, users, req_dict)
        else:
            msg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \
            msg['data']['pageSize'] = [],1,0,0,10

        return JsonResponse(msg)


def users_info(request, id_):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}

        data = users.getbyid(users, users, int(id_))
        if len(data) > 0:
            msg['data'] = data[0]
        # 浏览点击次数
        try:
            __browseClick__ = users.__browseClick__
        except:
            __browseClick__ = None

        if __browseClick__ and "clicknum" in users.getallcolumn(users, users):
            click_dict = {"id": int(id_), "clicknum": str(int(data[0].get("clicknum", 0)) + 1)}
            ret = users.updatebyparams(users, users, click_dict)
            if ret != None:
                msg['code'] = crud_error_code
                msg['msg'] = ret
        return JsonResponse(msg)


def users_save(request):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}
        req_dict = request.session.get("req_dict")
        req_dict['role'] = '管理员'
        error = users.createbyreq(users, users, req_dict)
        if error != None:
            msg['code'] = crud_error_code
            msg['msg'] = error
        return JsonResponse(msg)


def users_update(request):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}
        req_dict = request.session.get("req_dict")
        if req_dict.get("mima") and req_dict.get("password"):
            if "mima" not in users.getallcolumn(users,users):
                del req_dict["mima"]
            if "password" not in users.getallcolumn(users,users):
                del req_dict["password"]
        try:
            del req_dict["clicknum"]
        except:
            pass
        error = users.updatebyparams(users, users, req_dict)
        if error != None:
            msg['code'] = crud_error_code
            msg['msg'] = error
        return JsonResponse(msg)


def users_delete(request):
    '''
    '''
    if request.method in ["POST", "GET"]:
        msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}
        req_dict = request.session.get("req_dict")

        error = users.deletes(users,
            users,
            req_dict.get("ids")
        )
        if error != None:
            msg['code'] = crud_error_code
            msg['msg'] = error
        return JsonResponse(msg)

六、文章目录

1系统概述 1
1.1 研究背景 1
1.2研究目的 1
1.3系统设计思想 1
2相关技术 3
2.1 MYSQL数据库 3
2.2 B/S结构 3
2.3 Djangot框架简介 4
2.4 VUE框架 4
3系统分析 5
3.1可行性分析 5
3.1.1技术可行性 5
3.1.2经济可行性 5
3.1.3操作可行性 5
3.2系统性能分析 6
3.2.1 系统安全性 6
3.2.2 数据完整性 6
3.3系统界面分析 6
3.4系统流程和逻辑 8
4系统概要设计 9
4.1概述 9
4.2系统结构 10
4.3.数据库设计 11
4.3.1数据库实体 11
4.3.2数据库设计表 13
5系统详细实现 17
5.1 管理员模块的实现 17
5.2用户模块的实现 19
6系统测试 21
6.1概念和意义 21
6.2特性 22
6.3重要性 22
6.4测试方法 23
6.5 功能测试 23
6.6可用性测试 24
6.7性能测试 24
6.8测试分析 24
6.9测试结果分析 25
结论 25
致谢语 26
参考文献 26

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

QQ860234001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值