基于Python+Django+Vue+MYSQL的社团管理系统
创始人
2024-03-27 22:04:25
0

项目介绍

随着近年来大学教育的改革,大部分高校普遍开始实行学分制、弹性学制改革,这样学校在学生的学习和生活中所起的作用慢慢减小,不再是一种直接由学校决定学生的大学生活。学生对自己的学习和生活有了更大的自主权,在课余也有了更多可支配的时间和发挥的空间。这样学生就需要一些自治性的组织来实现对自我的管理,也需要一些兴趣性的社团来发挥自己的特长、发展自己的兴趣,实现大学里应有的素质提升。学生是学生社团发展的主体,有了学生的需求,高校学生社团的兴起就有了最根本的动力。看到了高校学生社团的兴起和蓬勃发展,自然让人倍感欣喜,但是传统的社团管理模式比较落后,为了提升社团的管理水平继续一套现代化的管理方式。

随着我国国民经济的发展,教育水平也在不断地发展,大学生的数量每年也在不断的递增,如此多的大学生在学校肯定是要参加一些社团然后丰富自己业余生活的同时也不断的积攒社会经验和精神水平,我通过研究长期的研究和分析一些现有的网站结合自己的学校,本校建立了这个社团网站,旨在提高大学生的精神生活和在即将毕业之际给母校大学做点小小的贡献。系统采用Python编程语言,Django框架,前端Vue技术,MySQL为后台数据库。

本系统主要有社团成员,社团团长和管理人员三个角色。
社团成员可以查看。新闻公告招新信息,并可在招新信息中申请加入喜欢的社团。可以在社团活动中申请自己想要参加的社团活动。
社团团长可以对自己所负责的社团内容进行管理。
管理人员可以对整个系统进行管理,同时还负责对社团团长的任命等功能

开发环境

开发语言:Python
数据库 :MySQL
系统架构:B/S
后端框架:Django
前端框架:Vue
开发工具:Pycharm
支持定做:Java/PHP/Python/Android/小程序/Vue/爬虫/C#/Asp.net

系统截图

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

部分代码

def news_list(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")#获取全部列名columns=  news.getallcolumn( news, news)#表属性[foreEndList]前台list:和后台默认的list列表页相似,只是摆在前台,否:指没有此页,是:表示有此页(不需要登陆即可查看),前要登:表示有此页且需要登陆后才能查看try:__foreEndList__=news.__foreEndList__except:__foreEndList__=Noneif __foreEndList__=="前要登":tablename=request.session.get("tablename")if tablename!="users" and 'userid' in columns:try:req_dict['userid']=request.session.get("params").get("id")except:pass#forrEndListAuthtry:__foreEndListAuth__=news.__foreEndListAuth__except:__foreEndListAuth__=None#authSeparatetry:__authSeparate__=news.__authSeparate__except:__authSeparate__=Noneif __foreEndListAuth__ =="是" and __authSeparate__=="是":tablename=request.session.get("tablename")if tablename!="users":req_dict['userid']=request.session.get("params",{"id":0}).get("id")tablename = request.session.get("tablename")if tablename == "users" and req_dict.get("userid") != None:#判断是否存在userid列名del req_dict["userid"]else:__isAdmin__ = NoneallModels = apps.get_app_config('main').get_models()for m in allModels:if m.__tablename__==tablename:try:__isAdmin__ = m.__isAdmin__except:__isAdmin__ = Nonebreakif __isAdmin__ == "是":if req_dict.get("userid"):del req_dict["userid"]else:#非管理员权限的表,判断当前表字段名是否有useridif "userid" in columns:try:# 本接口可以匿名访问,所以try判断是否为匿名req_dict['userid']=request.session.get("params").get("id")except:pass#当列属性authTable有值(某个用户表)[该列的列名必须和该用户表的登陆字段名一致],则对应的表有个隐藏属性authTable为”是”,那么该用户查看该表信息时,只能查看自己的try:__authTables__=news.__authTables__except:__authTables__=Noneif __authTables__!=None and  __authTables__!={} and __foreEndListAuth__=="是":try:del req_dict['userid']except:passfor authColumn,authTable in __authTables__.items():if authTable==tablename:params = request.session.get("params")req_dict[authColumn]=params.get(authColumn)breakif news.__tablename__[:7]=="discuss":try:del req_dict['userid']except:passmsg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \msg['data']['pageSize']  = news.page(news, news, req_dict)return JsonResponse(msg)def news_save(request):'''后台新增'''if request.method in ["POST", "GET"]:msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}req_dict = request.session.get("req_dict")tablename=request.session.get("tablename")__isAdmin__ = NoneallModels = apps.get_app_config('main').get_models()for m in allModels:if m.__tablename__==tablename:try:__isAdmin__ = m.__isAdmin__except:__isAdmin__ = Nonebreak#获取全部列名columns=  news.getallcolumn( news, news)if tablename!='users' and req_dict.get("userid")!=None and 'userid' in columns  and __isAdmin__!='是':params=request.session.get("params")req_dict['userid']=params.get('id')error= news.createbyreq(news,news, req_dict)if error!=None:msg['code'] = crud_error_codemsg['msg'] = errorreturn JsonResponse(msg)def news_add(request):'''前台新增'''if request.method in ["POST", "GET"]:msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}req_dict = request.session.get("req_dict")#获取全部列名columns=  news.getallcolumn( news, news)try:__authSeparate__=news.__authSeparate__except:__authSeparate__=Noneif __authSeparate__=="是":tablename=request.session.get("tablename")if tablename!="users" and 'userid' in columns:try:req_dict['userid']=request.session.get("params").get("id")except:passtry:__foreEndListAuth__=news.__foreEndListAuth__except:__foreEndListAuth__=Noneif __foreEndListAuth__ and __foreEndListAuth__!="否":tablename=request.session.get("tablename")if tablename!="users":req_dict['userid']=request.session.get("params").get("id")error= news.createbyreq(news,news, req_dict)if error!=None:msg['code'] = crud_error_codemsg['msg'] = errorreturn JsonResponse(msg)

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...