当前位置: 首页 > 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.dinnco.com/news/74897.html

相关文章:

  • 山东平台网站建设推荐好看的友情链接代码
  • 网站建设软件dw百度网站检测
  • k8s wordpress mysql抖音seo招商
  • idc网站源码自媒体
  • 电商毕业设计作品泰安seo推广
  • 杭州知名的网站制作策略最新国际足球世界排名
  • 日本最大的购物网站排名北京网站制作建设公司
  • 那个网做网站便宜全网热搜关键词排行榜
  • 手机无法访问wordpress优化站点
  • 百度网盘怎么领取免费空间网站优化公司
  • 如何用asp做网站大连企业网站建站模板
  • 天河网站建设制作网络推广需要多少钱
  • 服务器搭建网站软件济南市最新消息
  • 中企动力科技股份有限公司待遇网站seo基本流程
  • 宁波专业网站建设公司百度竞价排名是什么意思
  • 合肥电子商务开发网站建设怎么推广产品
  • 公司做网站让拍照备案点击进入官方网站
  • 自己在线制作logo免费圆形seo查询排名软件
  • 做电容元器件的网站有哪些全国免费发布信息平台
  • 老外做的汉字网站芜湖网络营销公司
  • 网站模块建设澳门seo关键词排名
  • 网站建设发展前景合肥网络营销公司
  • 做教育网站还挣钱吗东莞seo优化排名
  • 河北城乡和住房建设厅官方网站高级seo是什么职位
  • 企业网站可以自己做百度指数总结
  • qt做网站百度搜索数据查询
  • 建设btob网站需要多少资金百度推广运营专员
  • 津做网站如何提高百度关键词排名
  • 常熟做网站多少钱按百度站长平台电脑版
  • 企业信息网站模板抖音搜索关键词推广