From a5c0c950a6738bcdd3e33bd5f3fd6f909bcad6e2 Mon Sep 17 00:00:00 2001 From: SunFree <7934952@qq.com> Date: Wed, 15 May 2024 17:07:03 +0800 Subject: [PATCH] add blogs_interface --- __pycache__/dependencies.cpython-310.pyc | Bin 2660 -> 2660 bytes __pycache__/main.cpython-310.pyc | Bin 1712 -> 1747 bytes internal/__pycache__/models.cpython-310.pyc | Bin 1859 -> 2628 bytes internal/models.py | 29 ++++++++++++++++++ main.py | 3 +- .../__pycache__/blogmanage.cpython-310.pyc | Bin 0 -> 867 bytes routers/blogmanage.py | 18 +++++++++++ 7 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 routers/__pycache__/blogmanage.cpython-310.pyc create mode 100644 routers/blogmanage.py diff --git a/__pycache__/dependencies.cpython-310.pyc b/__pycache__/dependencies.cpython-310.pyc index bc09fcc689f442f781790756e82e5b1b218b25b8..e5039385123aec77079574f2306b77fc46dc8e9b 100644 GIT binary patch delta 20 acmaDN@Y?lIpP(J$e$+gMv37APBXx)6mj3uxZhwQg0r#?8Rg2 z3s~?`y!9;vJ?X(oz|vjzn~(Wse(Z{UFcveGSLl4ZXT9G!Yr@xjuX`}ELmLz{W=iOw zvnXS6P+0+8EGwO z$tUu@eAC7!F3q+<1nFLVBMoxvg1|2C#5dzke}bdrka~$mqTUr$u|wvf-ISO5iz=A> z)UUdJx|EA>l7(BejGH0NqfyMKLp+8QwohUy7SzB5i*5ystXiOfnmvO$#*gU-U^)T( E0k&0CqW}N^ delta 392 zcmYjLu}Z^G6wQrkh>};6wrSI*RR>Y3U!aH`+}#aG2)x^pVpDucv2IHA14He(aqVvaPhu?(sz019nQJu@IKiyV`IkF6gp>Hz5e@*b>MrpA8vz!dZzd`+Vcvo z5336xMRMzp4{Nhm@5G)ve0>2}!g>aM;1)Kxjc#A#6<)n7W#Bg{*5b9L9fy3C*LkDx zy?g_1LCxpjzP!P`dT7ySgiYWxoJL6+#e-mypb(DK%qS+F2A2~Q*Z!(B0v@K}qaxfq z({^Def6_Lgm49e)uSSV32v0V;|Ij4%RTdcXV0;w^QHrDFfV4y-P;bhr=ny&Ww)1J} zA$Roipd}M41568Nsj4U~`i!H|m`^V77-Z8PfvK3_f&nIt1$yynpn|-*oFBt$gHdV2 EFI${eiU0rr diff --git a/internal/__pycache__/models.cpython-310.pyc b/internal/__pycache__/models.cpython-310.pyc index f4b751eaf6a934e1b26ae387deff7a8e10afc2c6..21138bf9209893b52bdde6eb083f8e23b988a3c0 100644 GIT binary patch delta 915 zcmZ8fO=uHA6yBfN+5C5#CXJO=(o#ZWw6q>XwBQelAku^03Q}Tc8UtxkW_Q7QiK4X! zDH!I^A|j;}v7*J|rPiZ*@a}1Eg>GvP9=(VK-`oBLcbRYBn{Vfv@4cBXiLa?dEgp|3 z@T8Al9q$V@5}oSvMxmCwuCO>uJW*JJtB>`O2;?oyg4_!7C~Li~Ir#`EUDcxqV=?7f$K&-iI9~SwJ!C6 zyrX66OfRX7Fk_aCYaI%wj1DPW=Y$)~WFZ!2ky(A8i3W@bObl(amP5umT+<3nvWaOM zf)b&Klt->qY9%)Y`}?ym{FTM6g_)hj`MOBKjHkG5NK8Naxw3Zl^qGOpwYUEJx$Sqa z^F*|x<)F@>!VXAB!goQ;DLWP3r074L_E$dbsPKbp0c^c|=znMo9%<=;7WA)NJ?LLO zkc*<+Sgq>ts^f-W>GtYp|JAcH8+Os&LAK{_b8UTld3||b%w&AL=vEvN2vKKhl9$*u2~`7`MknUXIc<6H)j_=m^*!PcK&;5y$ih5}5V?^un-D0Ynt4 zYVZ;miNBO$4ACw%{*RKoqDRh?PR-6WHrne3CrpDAqwv+?dUgw&84 zQ$+!ia+r@VpO=@50SMF;?9)nEC-TWK7EIL6XG`G?X3*r@c)*8=v1&3e^HFgzpqg7; zxrr6=IjMQ+B^gEHK!GBO$uF4=xIuC-z6y&2qwM5VmL-e|leL(X_~n6eiXeF*5FtM~ zo=JAHGskoxP39s|pvW!ul+?7u(wq{YQFl1J_(gzXrEEar>5}$mn^#QM=ailNluefP z7IS7^$>bbP6;_a8DwC&jYO{k_ewtj9k8>KbfvhP~oXo+cCd3D13NY|63NQ<>0HKHo FGXU*TGdBPL diff --git a/internal/models.py b/internal/models.py index a5c278a..a52d42a 100644 --- a/internal/models.py +++ b/internal/models.py @@ -33,6 +33,35 @@ class User(BaseModel): class UserInDB(User): hashed_password: str = None +class Blog(BaseModel): + blogtitle:Annotated[str,Field( + title="博客标题", + pattern=r'^.{4,20}$', + examples=[""], + description="允许6-20个字符" + )] + blogcontent:Annotated[str,Field( + title="博客内容", + min_length=1, + description="最少1个字符" + )] + typeid:Annotated[int,Field( + title="类型id", + default=None, + description="类型id允许为空" + )] + descr:Annotated[str,Field( + title="备注", + default=None, + description="备注允许为空" + )] + +class BlogResponse(BaseModel): + status:int + message:str + blog:Blog + + class TypeList(BaseModel): blogid:Annotated[int,Field( title="博客id", diff --git a/main.py b/main.py index f6a7f48..1335ec4 100644 --- a/main.py +++ b/main.py @@ -4,10 +4,11 @@ from fastapi import Depends, FastAPI, HTTPException, status from dependencies import * from internal.models import Token from fastapi.middleware.cors import CORSMiddleware -from routers import usermanage,typemanage +from routers import usermanage,typemanage,blogmanage app=FastAPI() app.include_router(usermanage.router) app.include_router(typemanage.router) +app.include_router(blogmanage.router) app.add_middleware( CORSMiddleware, allow_origins=['http://localhost:5173'], # 允许的源 diff --git a/routers/__pycache__/blogmanage.cpython-310.pyc b/routers/__pycache__/blogmanage.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..28b9ff67932e5adb829eada36b9de86b4d78cdfa GIT binary patch literal 867 zcmYjPPixdb6wgd%ll@zZRK;6*5E@z9(xZr2Y0*;ImUinQ6hh3rELoD>I5Uy%(t=X) zR`4ud>di~Pgx_MWQi@+eP<)fs(jo6<-kX`<@BJHhI!z1L&hw4roLbfoW87R08c$JV zf{I(5WL8cBlGA|Zc3>0ZqZ#X)zn#@`Cvb8%aES$!GhQ1I?wrw}4)tM!yU^tIGYSNp zQ<4zgfEI5;J7K)V+aGGDBwYvcYjJVW|_1&$#aj8IPN2*Ab(kGfc z^r^l#02Rii5HM0<6sz!he@v1nzCG%6M%Ajj@ z@pz;#!>*bXkn%1E84KTgwf^#8bKhHfAiMuRe|q2C_hJE&0#BB43{oa#mQ5CYTbN+A zo1-flfM}uRySj1BrCT@1v@>JVwTe!-czXuWdeQIihHI;<;m)?tDi~o3tJ@MXh}Ep- zL4_OgNJZZ)v4H2l7B?Rq8ip_`(nC=-R922W8eu@o#YER<=bSh2ft*K0-!ZyCnuJkG zC~<(Hip3J6C|j;tCv}@wa|EL}1u4u(SIKB+7J_EQ zSSsCqhLP?4>$+yf((C|dsUoZrxS{SKimpFKhBAXE1TA?R)q+(g^Mqokj5vSV%p-pR D>j3Z+ literal 0 HcmV?d00001 diff --git a/routers/blogmanage.py b/routers/blogmanage.py new file mode 100644 index 0000000..c763a55 --- /dev/null +++ b/routers/blogmanage.py @@ -0,0 +1,18 @@ +from fastapi import Depends,APIRouter,status +from internal.models import * +from dependencies import get_current_active_user,execute_query + +router=APIRouter( + prefix="/blogs", + tags=['博客管理'] +) +@router.post('/add',response_model=BlogResponse) +async def blog_add(blog:Blog,_:User=Depends(get_current_active_user)): + select_query="INSERT INTO blogs (blogtitle,blogcontent,typeid,descr) VALUES (%s,%s,%s,%s)" + blog_data=(blog.blogtitle,blog.blogcontent,blog.typeid,blog.descr) + execute_query(select_query,blog_data) + return { + 'status':status.HTTP_200_OK, + 'message':'blog create successfully!', + 'blog':blog + } \ No newline at end of file