当前位置: 首页 > news >正文

黑龙江做网站深圳网站制作台

黑龙江做网站,深圳网站制作台,济南关键词优化平台,广东省城乡建设部网站源码见:"fastapi_study_road-learning_system_online_courses: fastapi框架实战之--在线课程学习系统" 加入课程 我们先看下加入课程 1.是否登录 2.课程是否存在 3.是否已经存在 4.添加 首先实现逻辑 def get_student_course(db: Session, course: int…

源码见:"fastapi_study_road-learning_system_online_courses: fastapi框架实战之--在线课程学习系统"

加入课程

我们先看下加入课程

1.是否登录

2.课程是否存在

3.是否已经存在

4.添加

首先实现逻辑

def get_student_course(db: Session, course: int, student: int):"""查询学生名下某个课程"""return db.query(StudentCourse).filter(StudentCourse.course == course, StudentCourse.student == student,StudentCourse.status == False).first()def add_student_course(course_id: int, user: UsernameRole, db: Session):"""添加课程"""if user.role == "教师":return response(code=101503, message="老师不能加入课程")db_course = get_course_by_id(db, course_id)if not db_course:return response(code=101501, message="课程不存在")db_user = get_by_username(db, user.username)exists = get_student_course(db, db_course.id, db_user.id)if exists:return response(code=101502, message="课程不能重复加入")try:s_course = StudentCourse(student=db_user.id,course=db_course.id)db.add(s_course)db.commit()db.refresh(s_course)except:logger.warning(f"加入课程:{db_course.name} 失败")return response(code=101504, message="课程加入失败")return response()

然后实现接口api

@course_router.post("/student_course", summary="加入课程")
def add(course_id: int, user: UsernameRole = Depends(get_current_user), db: Session = Depends(create_db)):return add_student_course(course_id, user, db)

测试:

退出课程

接下来看下退出课程

1.是否登录

2.登录用户必须是学生才可以退出

3.课程是否存在于学生的课程表

4.存在则退出

还是先实现逻辑

def del_student_course(course_id: int, user: UsernameRole, db: Session):"""退出课程"""if user.role == "老师":return response(code=101603, message="老师不能退出课程")db_user = get_by_username(db, user.username)db_student_course = get_student_course(db, course_id, db_user.id)if not db_student_course:return response(code=101602, message="课程不在自己课表内")try:db_student_course.status = Truedb_student_course.update_time = datetime.now()db.add(db_student_course)db.commit()db.refresh(db_student_course)except:logger.warning(f"退出课程:{course_id} 失败")return response(code=101601, message="退出课程失败")return response()

再实现接口api

@course_router.put("/student_course", summary="退出课程")
def out(course_id: int, user: UsernameRole = Depends(get_current_user), db: Session = Depends(create_db)):return del_student_course(course_id, user, db)

测试

以上就是加入课程和退出课程的接口实现

http://www.15wanjia.com/news/172276.html

相关文章:

  • 游戏创作平台江苏网站seo
  • 海南住房与城乡建设网站怎么做企业推广
  • 学校网站建设怎么样深圳网站设计公司怎么样
  • 网站建设多少钱比较合适西安网站制作公司
  • 十大小说网站排名wordpress设置分享
  • 个人网站整站下载做淘口令的网站
  • 不良网站进入窗口免费正能量永州网站网站建设
  • 网站优化要做哪些个人网站可以做淘宝店铺名
  • 高质量的南昌网站建设小程序开发公司小程序开发公司
  • 程序代码大全被公司优化掉是什么意思
  • 做网站的去哪找私活公司logo 标志 图案
  • 做免费视频网站违法吗淮安市建设监理协会网站
  • 圣弘建设股份有限公司网站一般网站服务器配置
  • 县城房地产网站可以做吗手机网站制作推荐
  • 网上做结婚照的网站昆明网站建设锐网
  • 临清设计网站上海seo关键词优化
  • 事业单位门户网站建设的建议php小程序开发完整教程
  • 黄页网站怎么查股票海选公司用什么网站
  • 打码网站做的比较好的是哪些重庆网站关键词优化推广
  • 哪个网站可以做头像的抚顺做网站的公司
  • 网站做排名2015新年.net电影网站开发
  • 云南做网站广州网页seo排名
  • 网站开发的整个流程一般通过什么渠道了解防灾减灾知识
  • google提交网站入口百度注册入口
  • 信用网站建设的必要性网站建设需要会什么软件
  • 设计类招聘网站微信商城和网站建设
  • 怎么建商业网站床上用品网站源码
  • 广东佛山如何制作网站公司销售管理系统设计
  • 金融企业网站php源码建筑工程网站搭建
  • 免费个人网站申请外贸订单一般在哪个平台接?