eLearning 是一个专用于管理电子学习系统后端基础设施的 API。
项目描述
在线学习 API 文档
eLearning 是一个专用于管理电子学习系统后端基础设施的 API。eLearning 完全使用 Python 3.6+ 开发,数据存储是通过第三方 API pymongo 3.9.0 实现的 MongoDB 实现。
安装
假设 Python 3 (>=3.6) 已经安装并且MongoDB集群连接正在工作,eLearning API 需要以下要求:
-
pymongo 3.9.0 . 或者,它可以通过以下方式轻松安装:
$ python -m pip install pymongo -
dnspython。或者,它可以通过以下方式轻松安装:
$ python -m pip install pymongo[srv] -
点子。或者,它可以通过以下方式轻松安装:
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py $ python get-pip.py -
安装:
$ pip install eLearning -
导入和你好世界:
import eLearning as el elc = el.eLearning_connector() print(elc.client) print(elc.db) print(elc.db.list_collection_names()) elc._tabula_rasa() elc.insert_professor( 'Paul Erdős', 'erdos@princeton.edu' ) elc.insert_student( 'Terence Tao', 'tao@princeton.edu' )
测试
要测试 API,请在 Python 命令行界面尝试下一行:
import eLearning as el
el.eLearning_test.run()
在线学习 API 文档
连接器级操作
类eLearning_connector ( )
eLearning_connector 是用于与 MongoDB 集群和数据库通信的对象。eLearning_connector 对象具有以下属性:
- 电子学习连接器。客户端:关于连接器的信息字典。
- 电子学习连接器。db:关于数据库的信息字典。
- 电子学习连接器。course_collection:包含课程信息的 MongoDB 集合对象。
- 电子学习连接器。course_collection:带有课程信息的 MongoDB 集合对象。
- 电子学习连接器。question_collection:带有问题信息的 MongoDB 集合对象。
- 电子学习连接器。binnacle_collection:带有 binnacles 信息的 MongoDB 集合对象。
- 电子学习连接器。record_collection:带有记录信息的 MongoDB 集合对象。
- 电子学习连接器。user_collection : 包含用户信息的 MongoDB 集合对象。
电子学习连接器。insert_professor(全名,电子邮件)
如果具有给定全名和电子邮件
('200 - OK',"")的教授用户已成功插入数据库,则返回元组。否则,返回。('409 - Conflict',"Insertion error.")
电子学习连接器。insert_student(全名,电子邮件)
如果具有给定全名和电子邮件
('200 - OK',"")的学生用户已成功插入数据库,则返回元组。否则,返回。('409 - Conflict',"Insertion error.")
电子学习连接器。delete_user_by_email ( 电子邮件 )
如果具有给定电子邮件
('200 - OK',"")的用户已从数据库中成功删除,则返回元组。否则,返回。('409 - Conflict',"Deletion error.")
电子学习连接器。get_user_by_email ( 电子邮件 )
如果教授用户的给定电子邮件结果,则返回类eLearning_professor实例。如果给定学生用户的电子邮件结果,则返回类eLearning_student实例。否则,返回。
None
电子学习连接器。list_professors ()
返回一个包含所有现有教授用户文档的 Python列表对象,每个文档都排列成一个 Python dict对象。如果数据库中没有教授用户,则返回一个空列表。
电子学习连接器。list_students ()
返回一个包含所有现有学生用户文档的 Python列表对象,每个文档都被排列成一个 Python dict对象。如果数据库中没有学生用户,则返回一个空列表。
电子学习连接器。list_courses ()
返回一个包含所有现有课程文档的 Python列表对象,每个文档被排列成一个 Python dict对象。如果数据库中没有课程,则返回一个空列表。
电子学习连接器。list_lessons ( parent_course_code )
将包含所有相关课程文档的 Python列表对象返回给给定的parent_course_code,每个文档都被排列成一个 Python dict对象。如果数据库中没有此类课程,则返回一个空列表。
电子学习连接器。list_questions ( parent_lesson_code )
将包含所有相关问题文档的 Python列表对象返回给给定的parent_lesson_code,每个文档都排列成一个 Python dict对象。如果数据库中没有此类问题,则返回一个空列表。
用户级操作
类eLearning_professor ( )
一个 eLearning_professor 实例对应于有效的教授用户的属性和方法:
- 电子学习教授。fullname:
<str>用户的全名。 - 电子学习教授。email:
<str>用户的电子邮件地址。 - 电子学习教授。角色:
<str>它总是设置为“教授”。
电子学习教授。create_course ( 标题, 代码, 描述= None, required_course_code= None)
参数 :
- 标题:
<str>课程的自定义标题。- code:
<str>课程的自定义代码。- 描述:
<str>课程描述。- required_course_code:
<str>所需批准课程的代码。
('200 - OK',"")如果具有给定参数的课程在数据库中成功创建,则返回元组。否则,('400 - Bad Request',"Course's code already exists.")返回('404 - Not Found',"Required-course's code not found.")或('409 - Conflict',"Insertion error.")。
电子学习教授。create_lesson(标题、代码、内容、parent_course_code、approval_score= 1.0、required_lesson_code= None)
参数 :
- title:
<str>课程的自定义标题。- code:
<str>课程的自定义代码。- 内容:
<str>课程描述。- correct_answers :
<list>正确答案标签列表 (<str>)。- parent_course_code:
<str>父课程的代码。- 批准分数:(最低分数)和(最高分数)
<float>之间的浮点数。0.01.0- required_lesson_code:
<str>所需批准课程的代码。
('200 - OK',"")如果在数据库中成功创建了具有给定参数的课程,则返回元组。否则,返回('400 - Bad Request',"Lesson's code already exists.")、或。('404 - Not Found',"Required-lesson's code not found.")('404 - Not Found',"Parent-course's code not found.")('409 - Conflict',"Insertion error.")
电子学习教授。create_question(代码、模式、内容、正确答案、父课程代码)
参数 :
- code:
<str>问题的自定义代码。- 模式:
<str>仅“布尔”、“MC1A”、“MCMA+”、“MCMA*”。- 内容:
<str>问题的描述。- 正确答案:
<list>选项标签列表。- parent_lesson_code:
<str>家长课程的代码。
('200 - OK',"")如果具有给定参数的问题在数据库中成功创建,则返回元组。否则,返回('400 - Bad Request',"Invalid question mode.")、或。('400 - Bad Request',"Answers have to be a list of strings.")('404 - Not Found',"Parent-lesson's code not found.")('409 - Conflict',"Insertion error.")
电子学习教授。list_courses ( )
返回包含所有当前课程的 Python 对象列表。
电子学习教授。阅读课程(代码,完整= False)
参数 :
- 代码:
<str>课程代码。- 满:
<bool>False或True。
在创建时返回具有给定课程属性的 Python 对象字典。此外,如果full设置为
True,将包含所有订阅的课程和问题的信息。
电子学习教授。阅读课程(代码,完整= False)
参数 :
- 代码:
<str>课程代码。- 满:
<bool>False或True。
在创建时返回具有给定课程属性的 Python 对象字典。此外,如果full设置为
True,将包含所有订阅问题的信息。
电子学习教授。read_question ( 代码 )
参数 :
- code:
<str>问题的代码。
在创建时返回具有给定问题属性的 Python 对象字典。
电子学习教授。update_course(代码,**kwards)
参数 :
- 代码:
<str>课程代码。- **kwards:
<dict>具有要为给定课程更新的属性的字典。
返回一个带有修改属性计数的整数。
电子学习教授。update_lesson ( 代码, **kwards )
参数 :
- 代码:
<str>课程代码。- **kwards:
<dict>具有要为给定课程更新的属性的字典。
返回一个带有修改属性计数的整数。
电子学习教授。update_question ( 代码, **kwards )
参数 :
- code:
<str>问题的代码。- **kwards:
<dict>具有要为给定问题更新的属性的字典。
返回一个带有修改属性计数的整数。
电子学习教授。删除课程(代码,**kwards )
参数 :
- 代码:
<str>课程代码。
返回一个整数,其中包含已删除对象的计数。
电子学习教授。delete_lesson(代码,**kwards)
参数 :
- 代码:
<str>课程代码。
返回一个整数,其中包含已删除对象的计数。
电子学习教授。delete_question ( 代码, **kwards )
参数 :
- code:
<str>问题的代码。
返回一个整数,其中包含已删除对象的计数。
类eLearning_student ( )
一个 eLearning_student 实例对应于有效的学生用户的属性和方法:
- 电子学习_学生。fullname:
<str>用户的全名。 - 电子学习_学生。email:
<str>用户的电子邮件地址。 - 电子学习_学生。角色:
<str>它总是设置为“学生”。 - 电子学习_学生。score:
<float>主分数。
电子学习_学生。get_record_summary ( )
返回一个 Python 对象列表,其中包含有关学生学习的所有课程和课程的类型、代码、状态、分数和日期时间的信息性字典。
电子学习_学生。list_courses_and_availability ( )
返回包含所有当前课程的 Python 对象列表。每门课程都由一个信息丰富的dict表示,其中的键
'available'用 表示True,该课程是否可供学生使用或以False其他方式使用。
电子学习_学生。list_lessons_and_availability (parent_course_code)
参数 :
- parent_course_code:
<str>父课程的代码。
返回包含所有当前课程的 Python 对象列表。每节课都由一个信息丰富的dict表示,其中的键
'available'用 表示True,该课是否可供学生使用或以False其他方式使用。
电子学习_学生。get_full_lesson ( 代码 )
参数 :
- 代码:
<str>声明课程的代码。
返回带有声明的课程信息及其订阅问题的 Python 对象字典。
电子学习_学生。take_lesson(代码,answers_list)
参数 :
- 代码:
<str>所学课程的代码。- answer_list:
<list>包含正确答案标签列表的列表;例如[['A','C'],['A'],[True]]。
返回一个 Python 对象dict恢复分数、所学课程的状态以及父课程状态是否被批准。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
内置分布
eLearning-0.0.5- py3 -none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | b302c02c5c4a4f0cdcfd0b9d778609492cd284c89d10c69313a3c250b6c08e76 |
|
| MD5 | badaac82e34df2e8a2f17aedb496a5b0 |
|
| 布莱克2-256 | 404a0e3361dc3111f67996293f6037a145411931858c53b907aa924b064115fb |