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()
ดังที่แสดงในตัวอย่างต่อไปนี้