A Topic คือป้ายกำกับสำหรับจัดกลุ่มรายการในสตรีม CourseWork และ
CourseWorkMaterial ภายในหลักสูตร โดยปกติแล้ว Topic จะใช้
เพื่อจัดหมวดหมู่รายการเหล่านี้ตามความคล้ายคลึงกัน เช่น สัปดาห์ที่กำหนดรายการ
หรือวิชา ผู้ใช้สามารถจัดระเบียบและกรองรายการในสตรีมด้วยสายตาในมุมมองงานของชั้นเรียน ของ UI ของ Classroom
แต่ละ Topic จะระบุด้วยรหัสที่ไม่ซ้ำกันซึ่งเซิร์ฟเวอร์กำหนด นอกจากนี้ แหล่งข้อมูล Topic
ยังมีข้อมูลต่อไปนี้ด้วย
name: ชื่อที่แสดงใน UI ของ ClassroomupdateTime: เวลาที่อัปเดตTopicล่าสุดcourseId: รหัสของหลักสูตรที่เชื่อมโยงกับTopic
สร้างหัวข้อ
คุณสร้าง Topic ใหม่ในหลักสูตรได้โดยใช้วิธี topics.create()
ดังที่แสดงในตัวอย่างต่อไปนี้
Java
Python
topic = {
"name": 'Example Topic'
}
response = service.courses().topics().create(
courseId=<course ID or alias>,
body=topic).execute()
print('Topic created: ', response['name'])
ช่อง name จำเป็นต้องกรอกเสมอและต้องเป็นสตริงที่ไม่ว่างเปล่า ส่วนช่องอื่นๆ จะไม่บังคับ
ดึงข้อมูลรายละเอียดหัวข้อ
คุณดึงข้อมูล Topic ที่เฉพาะเจาะจงตามรหัสได้ด้วยวิธี topics.get() ดังที่
แสดงในตัวอย่างต่อไปนี้
Java
Python
response = service.courses().topics().get(
courseId=<course ID or alias>,
id=<topic ID>).execute()
print('{0} ({1})'.format(response['name'], response['topicId']))
ใช้วิธี topics.list() เพื่อดึงข้อมูล Topic ทั้งหมดในหลักสูตร ดังที่แสดง
ในตัวอย่างต่อไปนี้
Java
Python
topics = []
page_token = None
while True:
response = service.courses().topics().list(
pageToken=page_token,
pageSize=30,
courseId=<course ID or alias>).execute()
topics.extend(response.get('topic', []))
page_token = response.get('nextPageToken', None)
if not page_token:
break
if not topics:
print('No topics found.')
else:
print('Topics:')
for topic in topics:
print('{0} ({1})'.format(topic['name'], topic['topicId']))
อัปเดตหัวข้อ
คุณอัปเดต Topic name ที่มีอยู่ได้ด้วยวิธี topics.patch() ดังที่
แสดงในตัวอย่างต่อไปนี้
Java
Python
topic = {
"name": "New Topic Name"
}
response = service.courses().topics().patch(
courseId=<course ID or alias>,
id=<topic ID>,
updateMask="name",
body=topic).execute()
print('{0} ({1})'.format(response['name'], response['topicId']))
ช่อง Topic id และ updateTime สร้างขึ้นโดยเซิร์ฟเวอร์และอัปเดตด้วย API ไม่ได้
ลบหัวข้อ
คุณลบ Topic ที่มีอยู่ได้ด้วยวิธี topics.delete() ดังที่แสดง
ในตัวอย่างต่อไปนี้