@ -1,4 +1,4 @@
from fastapi import Depends , APIRouter , status , Query , HTTPException
from fastapi import Depends , APIRouter , status , Query , Path , HTTPException
from internal.models import *
from internal.models import *
from dependencies import get_current_active_user , execute_query
from dependencies import get_current_active_user , execute_query
from datetime import datetime
from datetime import datetime
@ -23,7 +23,7 @@ async def blog_add(blog: Blog, _: User = Depends(get_current_active_user)):
@router.get ( " /list " )
@router.get ( " /list " )
async def blog_list ( ) :
async def blog_list ( ) :
select_query = " SELECT blogtitle, blogcontent, typename, create_at, update_at, blogs.descr FROM blogs LEFT JOIN `types` ON blogs.typeid = types.id ORDER BY create_at DESC; "
select_query = " SELECT blogs.id, blog title, blogcontent, typename, create_at, update_at, blogs.descr FROM blogs LEFT JOIN `types` ON blogs.typeid = types.id ORDER BY create_at DESC; "
blog_list = execute_query ( select_query , fetchall = True )
blog_list = execute_query ( select_query , fetchall = True )
return {
return {
' status ' : status . HTTP_200_OK ,
' status ' : status . HTTP_200_OK ,
@ -38,7 +38,7 @@ async def blog_list_search(
start_date : str = Query ( None , description = " 开始时间 " ) ,
start_date : str = Query ( None , description = " 开始时间 " ) ,
end_date : str = Query ( None , description = " 结束时间 " ) ,
end_date : str = Query ( None , description = " 结束时间 " ) ,
) :
) :
select_query = " SELECT blogtitle, blogcontent, typename, create_at, update_at, blogs.descr FROM blogs LEFT JOIN `types` ON blogs.typeid = types.id WHERE 1=1 "
select_query = " SELECT blogs.id, blog title, blogcontent, typename, create_at, update_at, blogs.descr FROM blogs LEFT JOIN `types` ON blogs.typeid = types.id WHERE 1=1 "
params = [ ]
params = [ ]
if blogtitle :
if blogtitle :
@ -69,12 +69,22 @@ async def blog_list_search(
' data ' : blog_list
' data ' : blog_list
}
}
@router.delete ( " /delete " )
async def blog_delete ( blogtitle : str = Query ( description = " 博客标题 " ) ) :
select_query = " DELETE FROM blogs WHERE blogtitle = %s "
delete_data = ( blogtitle , )
@router.delete ( " /delete/{id} " )
async def blog_delete ( id : str = Path ( description = " 博客id " ) ) :
select_query = " DELETE FROM blogs WHERE id = %s "
delete_data = ( id , )
execute_query ( select_query , delete_data )
execute_query ( select_query , delete_data )
return {
return {
" status " : status . HTTP_200_OK ,
" status " : status . HTTP_200_OK ,
" message " : " Blog deleted successfully! "
" message " : " Blog deleted successfully! "
}
}
@router.put ( " /update/{id} " )
async def blog_put ( blog : Blog , id : str = Path ( description = " 博客id " ) ) :
select_query = " UPDATE blogs SET blogtitle= %s ,blogcontent= %s ,typeid= %s ,descr= %s WHERE id= %s ; "
update_data = ( blog . blogtitle , blog . blogcontent , blog . typeid , blog . descr , id )
execute_query ( select_query , update_data )
return {
" status " : status . HTTP_200_OK ,
" message " : " Blog deleted successfully! "
}