开源 企业版 高校版 私有云 模力方舟 AI 队友
代码拉取完成,页面将自动刷新
捐赠
捐赠前请先登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
1 Star 1 Fork 431

Michael chen/likeadmin(Python版)

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
已有帐号? 立即登录
文件
master
分支 (14)
标签 (4)
master
develop
cherry-pick-1684465687
dev_hyc_v1.2
feat-admin
feat-front_index
feat-split_deploy
feat-channel
cherry-pick-1675816700
dev_storage_morpheus
dev_hyc_dict
dev_cyx
dev_hyc1103
dev_hyc
1.2.0
1.1.0
1.0.1
1.0.0
master
分支 (14)
标签 (4)
master
develop
cherry-pick-1684465687
dev_hyc_v1.2
feat-admin
feat-front_index
feat-split_deploy
feat-channel
cherry-pick-1675816700
dev_storage_morpheus
dev_hyc_dict
dev_cyx
dev_hyc1103
dev_hyc
1.2.0
1.1.0
1.0.1
1.0.0
克隆/下载
克隆/下载
提示
下载代码请复制以下命令到终端执行
为确保你提交的代码身份被 Gitee 正确识别,请执行以下命令完成配置
初次使用 SSH 协议进行代码克隆、推送等操作时,需按下述提示完成 SSH 配置
1 生成 RSA 密钥
2 获取 RSA 公钥内容,并配置到 SSH公钥
在 Gitee 上使用 SVN,请访问 使用指南
使用 HTTPS 协议时,命令行会出现如下账号密码验证步骤。基于安全考虑,Gitee 建议 配置并使用私人令牌 替代登录密码进行克隆、推送等操作
Username for 'https://gitee.com': userName
Password for 'https://userName@gitee.com': # 私人令牌
master
分支 (14)
标签 (4)
master
develop
cherry-pick-1684465687
dev_hyc_v1.2
feat-admin
feat-front_index
feat-split_deploy
feat-channel
cherry-pick-1675816700
dev_storage_morpheus
dev_hyc_dict
dev_cyx
dev_hyc1103
dev_hyc
1.2.0
1.1.0
1.0.1
1.0.0
app.py 4.17 KB
一键复制 编辑 原始数据 按行查看 历史
import os
from fastapi import FastAPI, Depends
from fastapi.staticfiles import StaticFiles
from fastapi_pagination import add_pagination
def configure_event(app: FastAPI):
"""配置事件处理, 并初始化三方库"""
from fastapi_cache import FastAPICache
from .config import get_settings
from .dependencies.database import db
from .dependencies.cache import redis_be, custom_key_builder
settings = get_settings()
@app.on_event('startup')
async def startup():
await db.connect()
FastAPICache.init(redis_be, prefix=settings.redis_prefix, key_builder=custom_key_builder)
@app.on_event('shutdown')
async def shutdown():
await db.disconnect()
def configure_middleware(app: FastAPI):
"""配置中间件"""
from uvicorn.middleware.proxy_headers import ProxyHeadersMiddleware
from .middlewares import init_cors_middleware, init_timeout_middleware
app.add_middleware(ProxyHeadersMiddleware)
init_cors_middleware(app)
init_timeout_middleware(app)
def configure_static(app: FastAPI):
"""配置静态资源"""
from .config import get_settings
settings = get_settings()
# 上传路径创建
if not os.path.exists(settings.upload_directory):
os.makedirs(settings.upload_directory)
# 上传路径配置
app.mount(settings.upload_prefix, StaticFiles(directory=settings.upload_directory), name='upload')
# 静态资源路径配置
if settings.enabled_static:
app.mount(settings.static_path, StaticFiles(directory=settings.static_directory), name='static')
def configure_admin_router(app: FastAPI, prefix='/api'):
"""配置后台路由"""
from .dependencies.verify import verify_token, verify_show_mode
from .config import get_settings
from .admin.routers import user, common, system, monitor, setting, channel, article, decorate
from .generator.routers import gen
settings = get_settings()
# 后台依赖
admin_deps = [Depends(verify_token)]
if settings.disallow_modify:
admin_deps.append(Depends(verify_show_mode))
# admin
app.include_router(user.router, prefix=prefix, dependencies=admin_deps)
app.include_router(common.router, prefix=prefix, dependencies=admin_deps)
app.include_router(system.router, prefix=prefix, dependencies=admin_deps)
app.include_router(monitor.router, prefix=prefix, dependencies=admin_deps)
app.include_router(setting.router, prefix=prefix, dependencies=admin_deps)
app.include_router(article.router, prefix=prefix, dependencies=admin_deps)
app.include_router(channel.router, prefix=prefix, dependencies=admin_deps)
app.include_router(decorate.router, prefix=prefix, dependencies=admin_deps)
# gen
app.include_router(gen.router, prefix=prefix, dependencies=admin_deps)
def configure_front_router(app: FastAPI, prefix='/api'):
"""配置前台路由"""
from .dependencies.verify import front_login_verify
from .front.routers import index, upload, article, login, user, sms
# front 依赖
front_deps = [Depends(front_login_verify)]
# front
app.include_router(index.router, prefix=prefix, dependencies=front_deps)
app.include_router(upload.router, prefix=prefix, dependencies=front_deps)
app.include_router(article.router, prefix=prefix, dependencies=front_deps)
app.include_router(login.router, prefix=prefix, dependencies=front_deps)
app.include_router(user.router, prefix=prefix, dependencies=front_deps)
app.include_router(sms.router, prefix=prefix, dependencies=front_deps)
def create_app() -> FastAPI:
"""创建FastAPI后台应用,并初始化"""
from .exceptions.global_exc import configure_exception
app = FastAPI()
configure_static(app)
configure_exception(app)
configure_event(app)
configure_middleware(app)
configure_admin_router(app)
add_pagination(app)
return app
def create_front() -> FastAPI:
"""创建FastAPI前台应用,并初始化"""
from .exceptions.global_exc import configure_exception
app = FastAPI()
configure_static(app)
configure_exception(app)
configure_event(app)
configure_middleware(app)
configure_front_router(app)
add_pagination(app)
return app
Loading...
举报
举报成功
我们将于2个工作日内通过站内信反馈结果给你!
请认真填写举报原因,尽可能描述详细。
请选择举报类型
取消
发送
误判申诉

此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。

如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。

取消
提交

简介

🚀🚀🚀likeadmin是一套快速开发管理后台,使用流行的技术栈Python3、FastAPI、TypeScript、Vue3、vite2、Element Plus1.2(ElementUI)。 后台管理系统、后台管理框架、Python管理后台、FastApi管理后台、前后端分离管理后台、Vue3管理后台、Vue.js管理后台、Element UI管理后台。
暂无标签
MIT
使用 MIT 开源许可协议
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
编辑仓库简介
简介内容
主页
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/cgdev/likeadmin_python.git
git@gitee.com:cgdev/likeadmin_python.git
cgdev
likeadmin_python
likeadmin(Python版)
master
点此查找更多帮助

搜索帮助

评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册

AltStyle によって変換されたページ (->オリジナル) /