Browse Source

博客类型

master
sunfree 11 months ago
parent
commit
fd4a2dd529
  1. BIN
      __pycache__/dependencies.cpython-310.pyc
  2. BIN
      __pycache__/main.cpython-310.pyc
  3. BIN
      internal/__pycache__/__init__.cpython-310.pyc
  4. BIN
      internal/__pycache__/database.cpython-310.pyc
  5. BIN
      internal/__pycache__/models.cpython-310.pyc
  6. 9
      internal/models.py
  7. 49
      main.py
  8. BIN
      routers/__pycache__/__init__.cpython-310.pyc
  9. BIN
      routers/__pycache__/typemanage.cpython-310.pyc
  10. BIN
      routers/__pycache__/usermanage.cpython-310.pyc
  11. 11
      routers/typemanage.py
  12. 1
      routers/usermanage.py

BIN
__pycache__/dependencies.cpython-310.pyc

BIN
__pycache__/main.cpython-310.pyc

BIN
internal/__pycache__/__init__.cpython-310.pyc

BIN
internal/__pycache__/database.cpython-310.pyc

BIN
internal/__pycache__/models.cpython-310.pyc

9
internal/models.py

@ -42,16 +42,21 @@ class BlogList(BaseModel):
)]
blogtype:Annotated[str,Field(
title="博客类型",
examples=['blogtype'],
default=None,
description="博客类型允许为空"
)]
viewsnum:Annotated[int,Field(
title="访问量",
default=None,
description="访问量可以为空"
)]
addtime:Annotated[datetime,Field(
title="发布时间",
description="数据库中提供了默认值"
)]
descr:Annotated[str,Field(
title="备注",
examples=['descr'],
default=None,
description="备注允许为空"
)]

49
main.py

@ -6,10 +6,9 @@ from internal.models import Token
from fastapi.middleware.cors import CORSMiddleware
from routers import usermanage,typemanage
from internal.models import BlogList
from typing import List
app=FastAPI()
# app.include_router(usermanage.router)
# app.include_router(typemanage.router)
app.include_router(usermanage.router)
app.include_router(typemanage.router)
app.add_middleware(
CORSMiddleware,
allow_origins=['http://localhost:5173'], # 允许的源
@ -18,23 +17,23 @@ app.add_middleware(
allow_headers=['Authorization', 'Content-Type'], # 允许的请求头
)
# 用户登录
@app.post("/token", response_model=Token)
async def login_for_access_token(
form_data: OAuth2PasswordRequestForm = Depends(),
) -> Token:
user = authenticate_user(form_data.username, form_data.password)
if not user:
raise HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED,
detail="Incorrect username or password",
headers={"WWW-Authenticate": "Bearer"},
)
access_token_expires = timedelta(minutes=ACCESS_TOKEN_EXPIRE_MINUTES)
access_token = create_access_token(
data={"sub": user.username}, expires_delta=access_token_expires
)
return {"access_token": access_token, "token_type": "bearer"}
# # 用户登录
# @app.post("/token", response_model=Token)
# async def login_for_access_token(
# form_data: OAuth2PasswordRequestForm = Depends(),
# ) -> Token:
# user = authenticate_user(form_data.username, form_data.password)
# if not user:
# raise HTTPException(
# status_code=status.HTTP_401_UNAUTHORIZED,
# detail="Incorrect username or password",
# headers={"WWW-Authenticate": "Bearer"},
# )
# access_token_expires = timedelta(minutes=ACCESS_TOKEN_EXPIRE_MINUTES)
# access_token = create_access_token(
# data={"sub": user.username}, expires_delta=access_token_expires
# )
# return {"access_token": access_token, "token_type": "bearer"}
# 注册新用户
@app.post("/register/")
@ -62,8 +61,8 @@ async def read_users_me(current_user: User = Depends(get_current_active_user)):
async def read_own_items(current_user: User = Depends(get_current_active_user)):
return [{"item_id": "Foo", "owner": current_user.username}]
@app.get("/list",response_model=List[BlogList])
def read_type_all():
typelist="SELECT blogname,blogtype,addtime,descr FROM blogs"
result=execute_query(typelist,fetchall=True)
return result
# @app.get("/list",response_model=list[BlogList])
# def read_type_all():
# select_query="SELECT blogname,blogtype,addtime,descr FROM blogs;"
# result=execute_query(select_query,fetchall=True)
# return result

BIN
routers/__pycache__/__init__.cpython-310.pyc

BIN
routers/__pycache__/typemanage.cpython-310.pyc

BIN
routers/__pycache__/usermanage.cpython-310.pyc

11
routers/typemanage.py

@ -2,12 +2,11 @@ from fastapi import APIRouter,Depends
from internal.models import*
from dependencies import get_current_active_user,execute_query
router=APIRouter(
prefix="/type",
tags=["分类管理"]
)
@router.get("/list",response_model=BlogList)
def read_type_all(type:BlogList,_: User = Depends(get_current_active_user)):
typelist="SELECT blogname,blogtype,addtime,descr FROM blogs"
execute_query(typelist)
return type
@router.get("/typelist",response_model=list[BlogList])
def read_type_all(_:User=Depends(get_current_active_user)):
select_query="SELECT blogname,blogtype,viewsnum,addtime,descr FROM blogs;"
type_all=execute_query(select_query,fetchall=True)
return type_all

1
routers/usermanage.py

@ -7,7 +7,6 @@ from dependencies import *
from internal.models import Token
from fastapi.middleware.cors import CORSMiddleware
router=APIRouter(
prefix="/users",
tags=["用户管理"]
)

Loading…
Cancel
Save