Zasoby tematyczne to grupa elementów strumienia sklasyfikowanych według podobieństwa, np. według przypisanego tygodnia lub tematu kursu.
Każdy temat jest identyfikowany przez unikalny identyfikator przypisany przez serwer. Z tym identyfikatorem powiązany jest identyfikator kursu, do którego należy temat, nazwa tematu wyświetlana w interfejsie Classroom oraz data i godzina ostatniej aktualizacji.
Tworzenie tematu
Nowy temat w kursie możesz utworzyć, używając metody topics.create()
, jak pokazano w tym przykładzie:
Java
Python
topic = {
"name": 'Example Topic'
}
response = service.courses().topics().create(
courseId=<course ID or alias>,
body=topic).execute()
print('Topic created: ', response['name'])
Pobieranie szczegółów tematu
Tematy odpowiedniego kursu możesz pobrać za pomocą metody topics.get()
, jak pokazano w tym przykładzie:
Java
Python
response = service.courses().topics().get(
courseId=<course ID or alias>,
id=<topic ID>).execute()
print('{0} ({1})'.format(response['name'], response['topicId']))
Aby uzyskać listę kursów, użyj metody topics.list()
, jak pokazano w tym przykładzie:
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']))
Zaktualizuj tematy
Możesz zaktualizować nazwę istniejącego tematu za pomocą metody topics.patch()
, jak pokazano w tym przykładzie:
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']))
Usuwanie tematów
Istniejący temat możesz usunąć za pomocą metody topics.delete()
, jak pokazano w tym przykładzie: