delete:暂时移除本地文件分析
This commit is contained in:
@@ -61,39 +61,6 @@ async def admin():
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@app.get(f'/{settings.ADMIN_ADDRESS}/files', dependencies=[Depends(admin_required)])
|
|
||||||
async def get_files():
|
|
||||||
files = []
|
|
||||||
for i, j, k in os.walk(f'{LOCAL_ROOT}'):
|
|
||||||
files.extend([{'name': _.split('/')[-1], 'path': i} for _ in k])
|
|
||||||
return {'data': files}
|
|
||||||
|
|
||||||
|
|
||||||
@app.post(f'/{settings.ADMIN_ADDRESS}/files', dependencies=[Depends(admin_required)])
|
|
||||||
async def share_file(name=Form(...), path=File(...), s: AsyncSession = Depends(get_session)):
|
|
||||||
file_path = path + f'/{name}'
|
|
||||||
key = uuid.uuid4().hex
|
|
||||||
code = await get_code(s)
|
|
||||||
now = datetime.datetime.now()
|
|
||||||
path = f"{settings.LOCAL_ROOT}/upload/{now.year}/{now.month}/{now.day}/"
|
|
||||||
if not os.path.exists(path):
|
|
||||||
os.makedirs(path)
|
|
||||||
text = f"{path}/{f'{key}{name}'}"
|
|
||||||
exp_time = datetime.datetime.now() + datetime.timedelta(days=1)
|
|
||||||
s.add(Codes(code=code, text=text.replace(f'{settings.LOCAL_ROOT}/', ''), type='file', name=name, count=-1,
|
|
||||||
exp_time=exp_time, key=key))
|
|
||||||
await s.commit()
|
|
||||||
shutil.move(file_path, text)
|
|
||||||
return {
|
|
||||||
'detail': '分享成功!请在24小时内使用分享使用!',
|
|
||||||
'data': {
|
|
||||||
'code': code,
|
|
||||||
'text': text,
|
|
||||||
'name': name,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@app.post(f'/{settings.ADMIN_ADDRESS}', dependencies=[Depends(admin_required)], description='查询数据库列表')
|
@app.post(f'/{settings.ADMIN_ADDRESS}', dependencies=[Depends(admin_required)], description='查询数据库列表')
|
||||||
async def admin_post(page: int = Form(default=1), size: int = Form(default=10), s: AsyncSession = Depends(get_session)):
|
async def admin_post(page: int = Form(default=1), size: int = Form(default=10), s: AsyncSession = Depends(get_session)):
|
||||||
infos = (await s.execute(select(Codes).offset((page - 1) * size).limit(size))).scalars().all()
|
infos = (await s.execute(select(Codes).offset((page - 1) * size).limit(size))).scalars().all()
|
||||||
|
|||||||
@@ -19,8 +19,6 @@ class Settings:
|
|||||||
DATABASE_URL = config('DATABASE_URL', cast=str, default=f"sqlite+aiosqlite:///{DATABASE_FILE}")
|
DATABASE_URL = config('DATABASE_URL', cast=str, default=f"sqlite+aiosqlite:///{DATABASE_FILE}")
|
||||||
# 数据存储文件夹,文件就不暴露在静态资源里面了
|
# 数据存储文件夹,文件就不暴露在静态资源里面了
|
||||||
DATA_ROOT = './data/' + config('DATA_ROOT', cast=str, default=f"static")
|
DATA_ROOT = './data/' + config('DATA_ROOT', cast=str, default=f"static")
|
||||||
# 本地文件夹
|
|
||||||
LOCAL_ROOT = './data/' + config('LOCAL_ROOT', cast=str, default=f"local")
|
|
||||||
# 静态文件夹URL
|
# 静态文件夹URL
|
||||||
STATIC_URL = config('STATIC_URL', cast=str, default="/static")
|
STATIC_URL = config('STATIC_URL', cast=str, default="/static")
|
||||||
# 开启上传
|
# 开启上传
|
||||||
|
|||||||
@@ -73,25 +73,6 @@
|
|||||||
>
|
>
|
||||||
</el-pagination>
|
</el-pagination>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col v-if="activeIndex === '3'">
|
|
||||||
<el-card style="height: 80vh;overflow: scroll;margin-bottom: 1rem">
|
|
||||||
<el-empty v-if="locals.length === 0"
|
|
||||||
description="暂时还没有文件,请上传至/opt/data/locals目录"></el-empty>
|
|
||||||
<el-card v-for="file in locals" :key="file.code">
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="20">
|
|
||||||
<div style="cursor: pointer;text-align: left">
|
|
||||||
<div>文件名:${ file.name }</div>
|
|
||||||
<div>路径:${ file.path }</div>
|
|
||||||
</div>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="4">
|
|
||||||
<el-button type="primary" @click="shareFile(file)">分享</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-card>
|
|
||||||
</el-card>
|
|
||||||
</el-col>
|
|
||||||
<el-col v-if="activeIndex === '4'">
|
<el-col v-if="activeIndex === '4'">
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="4" style="height: 88vh;overflow: scroll;text-align: center" :gutter="10">
|
<el-col :span="4" style="height: 88vh;overflow: scroll;text-align: center" :gutter="10">
|
||||||
|
|||||||
Reference in New Issue
Block a user