邯郸网站建设taigew网站设计制作有哪些原因

当前位置: 首页 > news >正文

邯郸网站建设taigew,网站设计制作有哪些原因,网站建设怎么估算费用和报价,猪八戒做网站要多少钱#x1f34a;作者#xff1a;计算机编程-吉哥 #x1f34a;简介#xff1a;专业从事JavaWeb程序开发#xff0c;微信小程序开发#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事#xff0c;生活就是快乐的。 #x1f34a;心愿#xff1a;点… 作者计算机编程-吉哥 简介专业从事JavaWeb程序开发微信小程序开发定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事生活就是快乐的。 心愿点赞 收藏 ⭐评论 文末获取源码联系 精彩专栏推荐订阅 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 Python毕业设计精品项目《1000套》 微信小程序毕业设计精品项目《1000套》 大数据/机器学习毕业设计精品项目《1000套》 目录 1.技术选型 2.开发工具 3.功能 3.1【角色】 3.2【前台功能模块】 3.3【后台功能模块】 4.项目演示截图 4.1 首页 4.2 歌手 4.3 注册 4.4 歌曲信息 4.5 个人中心 4.6 后台首页 4.7 歌手管理 4.8 歌曲信息管理 4.9 排行榜管理 5.核心代码 5.1 Settings.py 5.2 Urls.py 5.3 Users_v.py 5.4 Auth.py 6.LW文档大纲参考 背景意义介绍 基于Python的社交音乐分享平台是一种利用现代信息技术特别是社交网络和音乐数据管理来促进音乐爱好者之间交流和分享的在线系统。随着数字音乐时代的到来人们越来越倾向于在线聆听和分享音乐而这样的平台正好满足了这一需求。 该平台的主要功能包括用户登录注册、歌曲信息浏览、歌手信息展示、歌曲排行榜、音乐资讯获取、意见反馈以及个人中心管理等。后台管理模块则为管理员提供了用户管理、歌曲分类管理、标签管理、字母管理、歌手管理、歌曲信息管理、排行榜类型管理、排行榜管理和意见反馈管理等功能。 社交音乐分享平台的实现不仅为用户提供了一个便捷的音乐分享和交流空间也为音乐创作者和推广者提供了一个展示作品和获取反馈的渠道。此外系统的报表统计功能可以帮助管理员了解用户行为和偏好从而优化平台内容和提升用户体验。 通过该平台可以增强音乐爱好者之间的互动促进音乐文化的传播同时也为音乐产业的数字化转型提供了支持。总之该平台对于推动音乐产业的发展、丰富人们的文化生活、构建活跃的在线音乐社区具有重要的战略意义。 1.技术选型 Python、Django、vue、elementui、html、css、js、mysql 2.开发工具 pycharm、navicat 3.功能 3.1【角色】 管理员、用户 3.2【前台功能模块】 登录注册首页歌手歌曲信息排行榜音乐资讯意见反馈个人中心个人中心、修改密码、歌曲信息、我的收藏 3.3【后台功能模块】 登录系统首页报表统计个人中心用户管理歌曲分类管理标签管理字母管理歌手管理歌曲信息管理排行版类型管理排行榜管理意见反馈系统管理 4.项目演示截图 4.1 首页 4.2 歌手 4.3 注册 4.4 歌曲信息 4.5 个人中心 4.6 后台首页 4.7 歌手管理 4.8 歌曲信息管理 4.9 排行榜管理 5.核心代码 5.1 Settings.py Django settings for dj2 project.Generated by django-admin startproject using Django 2.0.For more information on this file, see https://docs.djangoproject.com/en/2.0/topics/settings/For the full list of settings and their values, see https://docs.djangoproject.com/en/2.0/ref/settings/ import os from concurrent.futures.thread import ThreadPoolExecutor executor ThreadPoolExecutor(20) from util.configread import config_read# Build paths inside the project like this: os.path.join(BASE_DIR, …) BASE_DIR os.path.dirname(os.path.dirname(os.path.abspath(file)))# Quick-start development settings - unsuitable for production

See https://docs.djangoproject.com/en/2.0/howto/deployment/checklist/# SECURITY WARNING: keep the secret key used in production secret!

SECRET_KEY w5yn#0gn2tt7pvu%hvwt0!lt!$6eqp4%m8)u3u#gknmjm)k# SECURITY WARNING: dont run with debug turned on in production! DEBUG TrueALLOWED_HOSTS []# Application definitionINSTALLED_APPS [django.contrib.admin,django.contrib.auth,django.contrib.contenttypes,django.contrib.sessions,django.contrib.messages,django.contrib.staticfiles,main,corsheaders, ]MIDDLEWARE [django.middleware.security.SecurityMiddleware,django.contrib.sessions.middleware.SessionMiddleware,django.middleware.common.CommonMiddleware,# django.middleware.csrf.CsrfViewMiddleware,django.contrib.auth.middleware.AuthenticationMiddleware,django.contrib.messages.middleware.MessageMiddleware,django.middleware.clickjacking.XFrameOptionsMiddleware,threadlocals.middleware.ThreadLocalMiddleware,xmiddleware.xparam.Xparam,xmiddleware.xauth.Xauth,corsheaders.middleware.CorsMiddleware,django.middleware.common.CommonMiddleware,] CORS_ALLOW_CREDENTIALS True CORS_ORIGIN_ALLOW_ALL True CORS_ALLOW_HEADERS ()SESSION_ENGINE django.contrib.sessions.backends.cache SESSION_COOKIE_NAME sessionid SESSION_COOKIE_PATH / SESSION_COOKIE_DOMAIN None SESSION_COOKIE_SECURE False SESSION_COOKIE_HTTPONLY True SESSION_COOKIE_AGE 1209600 SESSION_EXPIRE_AT_BROWSER_CLOSE False SESSION_SAVE_EVERY_REQUEST FalseROOT_URLCONF dj2.urls TEMPLATES_DIR os.path.join(BASE_DIR, templates) TEMPLATES [{BACKEND: django.template.backends.django.DjangoTemplates,DIRS: [TEMPLATES_DIR],APP_DIRS: True,OPTIONS: {context_processors: [django.template.context_processors.debug,django.template.context_processors.request,django.contrib.auth.context_processors.auth,django.contrib.messages.context_processors.messages,],},}, ]WSGI_APPLICATION dj2.wsgi.applicationEMAIL_BACKEND django.core.mail.backends.smtp.EmailBackend EMAIL_USE_TLS False EMAIL_USE_SSL True EMAIL_HOST smtp.qq.com EMAIL_PORT 465 EMAIL_HOST_USER yclw9qq.com EMAIL_HOST_PASSWORD mhbrkuayvkkgbijd# Database

https://docs.djangoproject.com/en/2.0/ref/settings/#databases# DATABASES {

default: {

ENGINE: django.db.backends.sqlite3,

NAME: os.path.join(BASE_DIR, db.sqlite3),

}

}dbtype, host, port, user, passwd, dbName, charset,hasHadoop config_read(config.ini)

dbNamedbName.replace( ,).strip() print(dbtype, host, port, user, passwd, dbName, charset)if dbtype mysql:DATABASES {default: {# ENGINE: django.db.backends.sqlite3,# NAME: os.path.join(BASE_DIR, db.sqlite3),ENGINE: django.db.backends.mysql,OPTIONS: {sql_mode: traditional,init_command: SET sql_modetraditional, # STRICT_TRANS_TABLES},NAME: dbName,USER: user,PASSWORD: passwd,HOST: host,PORT: port,charset: charset,TEST: {CHARSET: charset,COLLATION: utf8_general_ci,},CONN_MAX_AGE:60},} else:print(请使用mysql5.5数据库)os._exit(1)# Password validation

https://docs.djangoproject.com/en/2.0/ref/settings/#auth-password-validatorsAUTH_PASSWORD_VALIDATORS [{NAME: django.contrib.auth.password_validation.UserAttributeSimilarityValidator,},{NAME: django.contrib.auth.password_validation.MinimumLengthValidator,},{NAME: django.contrib.auth.password_validation.CommonPasswordValidator,},{NAME: django.contrib.auth.password_validation.NumericPasswordValidator,},

]# Internationalization

https://docs.djangoproject.com/en/2.0/topics/i18n/LANGUAGE_CODE zh-Hans# TIME_ZONE UTC

TIME_ZONE Asia/ShanghaiUSE_I18N TrueUSE_L10N True# USE_TZ True USE_TZ False# Static files (CSS, JavaScript, Images)

https://docs.djangoproject.com/en/2.0/howto/static-files/STATIC_URL /assets/

STATICFILES_DIRS [ os.path.join(BASE_DIR, templates/front/assets), ]# media MEDIA_URL /media/ # 自定义 MEDIA_ROOT os.path.join(BASE_DIR, media) # 自定义 if os.path.isdir(MEDIA_ROOT) False:os.mkdir(MEDIA_ROOT)ALIPAY_APP_ID 9021000132629452 APP_PRIVATE_KEY_STRING open({}/util/alipay_key/app_private_2048.txt.format(BASE_DIR)).read() ALIPAY_PUBLIC_KEY_STRING open({}/util/alipay_key/alipay_public_2048.txt.format(BASE_DIR)).read() ALIPAY_SIGN_TYPE RSA25.2 Urls.py dj2 URL ConfigurationThe urlpatterns list routes URLs to views. For more information please see:https://docs.djangoproject.com/en/2.0/topics/http/urls/ Examples: Function views1. Add an import: from my_app import views2. Add a URL to urlpatterns: path(, views.home, namehome) Class-based views1. Add an import: from other_app.views import Home2. Add a URL to urlpatterns: path(, Home.as_view(), namehome) Including another URLconf1. Import the include() function: from django.urls import include, path2. Add a URL to urlpatterns: path(blog/, include(blog.urls))import os from django.contrib import admin from django.urls import path,include,re_path from django.conf.urls import url from django.views.static import serve from django.views.generic import TemplateViewfrom . import views from dj2.settings import dbName as schemaNameurlpatterns [path(xadmin/, admin.site.urls),path(rindex/,views.index),path({}/.format(schemaName),include(main.urls)),#导入schemaNamere_path(radmin/lib/(?Pp1.)/(?Pp2.)\(, views.admin_lib2),re_path(radmin/lib/(?Pp1.*)/(?Pp2.*)/(?Pp3.*)\), views.admin_lib3),re_path(radmin/lib/(?Pp1.)/(?Pp2.)/(?Pp3.)/(?Pp4.)\(, views.admin_lib4),re_path(radmin/page/(?Pp1.*)\), views.admin_page),re_path(radmin/page/(?Pp1.)/(?Pp2.)\(, views.admin_page2),re_path(radmin/pages/(?Pp1.*)\), views.admin_pages),re_path(radmin/pages/(?Pp1.)/(?Pp2.)\(, views.admin_pages2),re_path(rfront/(?Pp1.*)\), views.schema_front1),re_path(rfront/(?Pp1.)/(?Pp2.)\(, views.schema_front2),re_path(rfront/(?Pp1.*)/(?Pp2.*)/(?Pp3.*)\), views.schema_front3),re_path(rfront/(?Pp1.)/(?Pp2.)/(?Pp3.)/(?Pp4.)\(, views.schema_front4),re_path(r{}/front/(?Pp1.*)\).format(schemaName), views.schema_front1),re_path(r{}/front/(?Pp1.)/(?Pp2.)\(.format(schemaName), views.schema_front2),re_path(r{}/front/(?Pp1.*)/(?Pp2.*)/(?Pp3.*)\).format(schemaName), views.schema_front3),re_path(r{}/front/(?Pp1.)/(?Pp2.)/(?Pp3.)/(?Pp4.)\(.format(schemaName), views.schema_front4),# re_path(rassets/(?Pp1.*)\), views.assets1),# re_path(rassets/(?Pp1.)/(?Pp2.)\(, views.assets2),# re_path(rassets/(?Pp1.*)/(?Pp2.*)/(?Pp3.*)\), views.assets3),# re_path(rassets/(?Pp1.)/(?Pp2.)/(?Pp3.)/(?Pp4.)\(, views.assets4),#re_path(radmin/(?Pp1.*)\), views.admin_file1),re_path(radmin/(?Pp1.)/(?Pp2.)\(, views.admin_file2),re_path(radmin/(?Pp1.*)/(?Pp2.*)/(?Pp3.*)\), views.admin_file3),re_path(radmin/(?Pp1.)/(?Pp2.)/(?Pp3.)/(?Pp4.)\(, views.admin_file4),re_path(rlayui/(?Pp1.*)\), views.layui1),re_path(rlayui/(?Pp1.)/(?Pp2.)\(, views.layui2),re_path(rlayui/(?Pp1.*)/(?Pp2.*)/(?Pp3.*)\), views.layui3),re_path(rlayui/(?Pp1.)/(?Pp2.)/(?Pp3.)/(?Pp4.)\(, views.layui4),re_path(rpages/(?Pp1.*)\), views.front_pages),re_path(rpages/(?Pp1.)/(?Pp2.)\(, views.front_pages2),# re_path(rpages/(?Pp1.*)\), views.front_file1),# re_path(r(?Pp1css|jss|img|image|iamges|font|fonts)/(?Pp2.)$, views.front_file2),re_path(rmodules/(?Pp1.)\(, views.front_modules),re_path(rcss/(?Pp1.*)\), views.css1),re_path(rjs/(?Pp1.)$, views.js1),re_path(rimg/(?Pp1.)$, views.img1),path(rtest/str:p1/,views.test),path(rnull,views.null), ]#判断admin使用vue还是jquery if os.path.isdir(os.path.join(os.getcwd(),templates/front/admin/dist/)):urlpatterns.extend([path(r{}/admin/dist/index.html.format(schemaName),TemplateView.as_view(template_namefront/admin/dist/index.html)),path(r{}/admin/.format(schemaName), TemplateView.as_view(template_namefront/admin/dist/index.html)),# 以下是后台admin的url匹配规则path(radmin/dist/index.html.format(schemaName),TemplateView.as_view(template_namefront/admin/dist/index.html)),path(radmin/, TemplateView.as_view(template_namefront/admin/dist/index.html)),]) else:urlpatterns.extend([path(r{}/admin/index.html.format(schemaName),TemplateView.as_view(template_namefront/admin/index.html)),path(r{}/admin/.format(schemaName), TemplateView.as_view(template_namefront/admin/index.html)),# 以下是后台admin的url匹配规则path(radmin/index.html.format(schemaName),TemplateView.as_view(template_namefront/admin/index.html)),path(radmin/, TemplateView.as_view(template_namefront/admin/index.html)),])if os.path.isfile(os.path.join(os.getcwd(),templates/front/index.html)):urlpatterns.extend([path(rindex.html, TemplateView.as_view(template_namefront/index.html)),path(r{}/index.html.format(schemaName), TemplateView.as_view(template_namefront/index.html)),path(r{}/front/index.html.format(schemaName), TemplateView.as_view(template_namefront/index.html)),path(r, TemplateView.as_view(template_namefront/index.html)),])5.3 Users_v.py

coding:utf-8

author ilafrom django.http import JsonResponsefrom .users_model import users from util.codes import * from util.auth import Auth import util.message as mes from dj2.settings import host,port,user,passwd,dbName,hasHadoopdef 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_codemsg[msg] mes.password_error_codereturn 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_codemsg[msg] errorreturn 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.hasMessageexcept:hasMessage Noneif 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,10return JsonResponse(msg)def usersinfo(request, id):if request.method in [POST, GET]:msg {code: normal_code, msg: mes.normalcode, data: {}}data users.getbyid(users, users, int(id))if len(data) 0:msg[data] data[0]# 浏览点击次数try:browseClick users.browseClickexcept:browseClick Noneif browseClick and clicknum in users.getallcolumn(users, users):clickdict {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_codemsg[msg] retreturn 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_codemsg[msg] errorreturn 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:passerror users.updatebyparams(users, users, req_dict)if error ! None:msg[code] crud_error_codemsg[msg] errorreturn 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_codemsg[msg] errorreturn JsonResponse(msg)5.4 Auth.py

coding:utf-8

author:ila

import base64, copy from django.http import JsonResponse from django.apps import appsfrom util.codes import * from util import message as mesclass Auth(object):def authenticate(self, model, req_dict):用户登录登录成功返回token登录失败返回失败原因:param username:账号:param password:密码:return: jsonmsg {code: normal_code, msg: mes.normal_code, data: {}}tablename model.tablenameencode_dict {tablename: tablename, params: req_dict}encode_str base64.b64encode(str(encode_dict).encode(utf-8))msg[data][id] req_dict.get(id)msg[id] req_dict.get(id)msg[token] encode_str.decode(utf-8)return JsonResponse(msg)def identify(self, request):用户鉴权:param request:本次请求对象:return: listmsg {code: normal_code, msg: mes.normal_code, data: {}}# django的header被处理过了token request.META.get(HTTP_TOKEN)if token and token !null:auth_token copy.deepcopy(token)decode_str base64.b64decode(auth_token).decode(utf8)decode_strdecode_str.replace(null,).replace(null,)decode_dict eval(decode_str)tablename2 decode_dict.get(tablename)params2 decode_dict.get(params,{})datasNoneallModels apps.get_app_config(main).get_models()for model in allModels:if model.tablename tablename2:datas model.getbyparams(model, model, params2)if not datas:msg[code] username_error_codemsg[msg] 找不到该用户信息result msgelse:request.session[tablename] tablename2request.session[params] params2msg[msg] 身份验证通过。result msgelse:msg[code] 401msg[msg] headers未包含认证信息。result msgreturn result6.LW文档大纲参考 具体LW如何写法可以咨询博主耐心分享  你可能还有感兴趣的项目 更多项目推荐:计算机毕业设计项目 Python毕业设计精品项目《1000套》 微信小程序毕业设计精品项目《1000套》 大数据/机器学习毕业设计精品项目《1000套》 如果大家有任何疑虑请在下方咨询或评论