Topic
هو تصنيف لتجميع عناصر البث CourseWork
و
CourseWorkMaterial
ضمن دورة تدريبية. يتم استخدام Topic
عادةً
لتصنيف هذه العناصر حسب التشابه، مثل الأسبوع الذي تم تخصيص العناصر له
أو موضوعها. يمكن للمستخدمين تنظيم عناصر ساحة المشاركات وفلترتها بشكل مرئي في عرض
واجبات الفصل الدراسي في واجهة مستخدم Classroom.
يتم تحديد كل Topic
من خلال معرّف فريد يحدّده الخادم. يحتوي مرجع Topic
أيضًا على ما يلي:
name
: الاسم المعروض في واجهة مستخدم 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
من خلال الخادم ولا يمكن تعديلهما باستخدام واجهة برمجة التطبيقات.
حذف موضوع
يمكنك حذف Topic
حالي باستخدام طريقة topics.delete()
، كما هو موضّح
في العيّنة التالية: