Python-клиент Google Sheets ведет себя недетерминированно
Я создал проект Django
, который использует Google Sheets
для хранения некоторых данных. Когда я делаю запрос к конечной точке (/ca/register
), иногда запрос проходит успешно с созданием нового объекта ca
в базе данных, и его данные также добавляются в соответствующий Google Sheet.
В других случаях, с теми же данными, данные нового ЦА добавляются в базу данных Django, но сценарий, отвечающий за добавление данных в Google Sheets, не работает, что приводит к сбою запроса в целом. Я получаю странную ошибку в журналах развертывания.
PS. CA означает Campus Ambassador.
Прилагаю соответствующие фрагменты кодов и журналов:
Журнал ошибок
CARegistrations.py
Этот файл реализует класс CASheet
, содержащий информацию об идентификаторе листа для доступа. Следующий метод класса вызывается на нем в сериализаторе register
после подтверждения CA
запроса.
class CASheet:
# Internal information about the sheet
@classmethod
def add_registration_details(cls, data):
spreadsheet_id = cls.SPREADSHEET_ID
body = {
'values': [data]
}
result = cls.service.spreadsheets().values().append(
spreadsheetId=spreadsheet_id, range=cls.RANGE_NAME, valueInputOption=cls.value_input_option, body=body).execute()
Какова может быть возможная причина этой ошибки и как я должен решить эту индетерминистическую ситуацию?