Изменил(а) на 'Главная'

Григорич 2023-06-06 12:26:41 +00:00
parent cf7598f46d
commit aec94292eb

@ -9,25 +9,27 @@
## Решение проблем ## Решение проблем
### Запуск с последнего успешно загруженного ID: ### Запуск с последнего успешно загруженного ID:
1. В `.env` переменную `LAST_ID` заменить на ID, который был успешно загружен последним, либо после которого имеется ошибка. POST-запросом ID не отправляется, поэтому необходимо выполнять поиск по имени в инфоблоках и искать человека, который был успешно принят принимающей стороной. Кроме того, можно поискать информацию в логах 1. В `.env` переменную `LAST_ID` заменить на ID, который был успешно загружен последним, либо после которого имеется ошибка. POST-запросом ID не отправляется, поэтому необходимо выполнять поиск по имени в инфоблоках и искать человека, который был успешно принят принимающей стороной. Кроме того, можно поискать информацию в логах.
2. Перезапустить docker-compose командой `docker-compose up -d --force-recreate`, чтобы подгрузились новые переменные окружения. 2. Перезапустить docker-compose командой `docker-compose up -d --force-recreate`, чтобы подгрузились новые переменные окружения.
### Отправка только определённых полей ### Отправка только определённых полей
1. Открываем файл `src/models.py` 1. Открываем файл `src/models.py`.
2. Комментируем поля, которые не должны отправляться 2. Комментируем поля, которые не должны отправляться.
3. Обязательно оставить поле ID, без него не запишется состояние последнего отправленного элемента инфоблока. 3. Обязательно оставить поле ID, без него не запишется состояние последнего отправленного элемента инфоблока.
4. После внесения изменений необходимо проверить работу локально.
5. В случае успеха пересобрать образ docker.
### Добавление новых данных в обработчике ### Добавление новых данных в обработчике
1. Открываем файл src/models.py 1. Открываем файл src/models.py.
2. Добавляем новый атрибут. Название атрибута должны совпадать с кодом свойства инфоблока 2. Добавляем новый атрибут. Название атрибута должны совпадать с кодом свойства инфоблока.
3. Если нет понимания, какой тип данных будет приниматься или поле необязательно к заполнению, то тип данных можно выставить `Optional[Any]` 3. Если нет понимания, какой тип данных будет приниматься или поле необязательно к заполнению, то тип данных можно выставить `Optional[Any]`.
4. После внесения изменений необходимо проверить работу локально 4. После внесения изменений необходимо проверить работу локально.
5. В случае успеха пересобрать образ docker. 5. В случае успеха пересобрать образ docker.
## Важно знать ## Важно знать
1. В скрипт обработчика лезть для добавления новых полей нет необходимости. Для этого нужно поменять только файл с моделями 1. В скрипт обработчика лезть для добавления новых полей нет необходимости. Для этого нужно поменять только файл с моделями.
2. Все данные должны быть записаны в соответствующие свойства инфоблока, чтобы не пришлось менять логику обработчика 2. Все данные должны быть записаны в соответствующие свойства инфоблока, чтобы не пришлось менять логику обработчика.
3. Атрибуты в файле с моделями должны в точности соответствовать свойствам инфоблока. Допускается отсутствие определённых свойств инфоблока в моделях. Не допускается наличие атрибутов модели, которых нет в свойствах инфоблока 3. Атрибуты в файле с моделями должны в точности соответствовать свойствам инфоблока. Допускается отсутствие определённых свойств инфоблока в моделях. Не допускается наличие атрибутов модели, которых нет в свойствах инфоблока.
4. Все данные должны передаваться в свойствах инфоблока. Исключение - ID элемента 4. Все данные должны передаваться в свойствах инфоблока. Исключение - ID элемента.
5. Принимающая сторона и обработчик обязаны предварительно согласовать атрибуты передаваемых данных. Атрибуты должны быть записаны как свойства инфоблока. 5. Принимающая сторона и обработчик обязаны предварительно согласовать атрибуты передаваемых данных. Атрибуты должны быть записаны как свойства инфоблока.