FastAPI(七十三)實戰開發《在線課程學習系統》接口開發-- 回覆留言

之前文章分享FastAPI(七十二)實戰開發《在線課程學習系統》接口開發-- 留言列表開發,這次我們分享如何回覆留言

按照慣例,我們還是去分析這裏面的邏輯。

1.判斷用戶是否登錄
2.用戶登錄判斷回覆的是否存在
3.存在回覆

     我們對應的pydantic對象

class RebackMessConnet(MessageConent):
    rebackid: int

      對應的crud

def db_creat_rebackmessage(db: Session, reback: RebackMessConnet, senduser: int):
    times = datetime.strftime(datetime.now(), "%Y-%m-%d %H:%M:%S")
    reabck = Message(**reback.dict())
    reabck.sendtime=times
    reabck.senduser=senduser
    db.add(reabck)
    db.commit()  # 提交保存到數據庫中
    db.refresh(reabck)  # 刷新
    return reabck

          那麼我們看下接口最後的實現代碼

@usersRouter.get(path='/rebackmessage')
async  def rebackmessage(rebackmessage:RebackMessConnet,user: UsernameRole = Depends(get_cure_user),
                      db: Session = Depends(get_db)):
    if rebackmessage.connect=="":
        return reponse(code=100802,message='回覆留言內容不能爲空',data='回覆留言內容不能爲空')
    if len(rebackmessage.connect)>500 or len(rebackmessage.connect)<5:
        return reponse(code=100803,message='回覆內容應該在5-500字',data='回覆內容應該在5-500字')
    users=get_user_username(db,user.username)
    message=get_message(db,rebackmessage.rebackid)
    if not message:
        return reponse(code=100804,message='回覆留言id不存在',data='回覆留言id不存在')
    db_creat_rebackmessage(db,rebackmessage,users.id)
    return reponse(code=200, message='成功', data='成功')

   這個功能是一個很簡單的接口。實現起來沒有那麼複雜。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章