Прочитайте нулевое значение в Python Redmine API

Используя rest API, я соединяю Redmine с Python Script и заполняю данные в ODOO.

В Redmine назначенное значение в пустом, т. Е. NULL, при чтении этих значений.

Traceback (most recent call last):
  File "/home/vignesh/PycharmProjects/vignesh/vigred.py", line 23, in <module>
    redmine_asssigned_to = id.assigned_to
  File "/usr/local/lib/python2.7/dist-packages/python_redmine-1.5.1-py2.7.egg/redmine/resources.py", line 424, in __getattr__
    return super(Issue, self).__getattr__(item)
  File "/usr/local/lib/python2.7/dist-packages/python_redmine-1.5.1-py2.7.egg/redmine/resources.py", line 193, in __getattr__
    return self._action_if_attribute_absent()
  File "/usr/local/lib/python2.7/dist-packages/python_redmine-1.5.1-py2.7.egg/redmine/resources.py", line 294, in _action_if_attribute_absent
    raise ResourceAttrError
redmine.exceptions.ResourceAttrError: Resource doesn't have the requested attribute

1 ответ

Решение

Краткий ответ: Использование getattr(id, 'assigned_to', None) вместо id.assigned_to,

Длинный ответ: Python-Redmine повышает ResourceAttrError если вы пытаетесь получить доступ к атрибуту, который не существует. Проблема здесь в том, что assigned_to может существовать или не существовать в объекте ресурса в зависимости от того, установлен он в Redmine или нет, также Python-Redmine не жестко кодирует какие-либо атрибуты внутри себя, то есть он получает их динамически из Redmine, поэтому у вас есть эта проблема.

Другие вопросы по тегам