Python: создать список с несколькими вариантами выбора. Ошибка: найдено свойство открытой коллекции. В OData свойства открытой коллекции не поддерживаются - PullRequest
0 голосов
/ 18 октября 2019

Я добавляю элемент в список SharePoint, используя следующий код:

from office365.runtime.auth.authentication_context import AuthenticationContext
from office365.runtime.client_request import ClientRequest
from office365.runtime.utilities.request_options import RequestOptions
from office365.sharepoint.client_context import ClientContext

app_settings = {
        'url': 'url',
        'client_id': 'clientid',
        'client_secret': 'secret'
    }

context_auth = AuthenticationContext(url=app_settings['url'])
context_auth.acquire_token_for_app(client_id=app_settings['client_id'], client_secret=app_settings['client_secret'])
ctx = ClientContext(app_settings['url'], context_auth)
print("Create list item example...")
list_object = ctx.web.lists.get_by_title("listtitle")
item_properties = {'__metadata': {'type': 'SP.List'}, 'Title': 'Task Created by Python Script',
                           'CategoryDescription': 'This is a test Task created by Python script with the help of Office 365 library.'}

Я мог бы успешно добавить элемент в список с кодом выше.

Теперь, когда я пытаюсь повторить то же самое сЗначения с несколькими вариантами выбора, как показано ниже, не работают

item_properties = {'__metadata': {'type': 'SP.List'}, 'Title': '01 Task Created by Python Script', 'CategoryDescription': 'This is a test Task created by Python script with the help of Office 365 library.'
                   'ChoiceField':{
                         '__metadata' : {'type' : 'Collection(Edm.String)' },
                         'results': ['value 1', 'value 2']
                     }
                  }

При запуске с вышеуказанным, появляется ошибка ниже:

An open collection property 'ChoiceField' was found. In OData, open collection properties are not supported.", "400 Client Error: Bad Request for url:..."

Не повезло в поискерешение. Может кто-нибудь помочь мне решить проблему?

Обновление: я даже поднял проблему на странице Github библиотеки Python office-365. Проблему можно найти здесь

1 Ответ

0 голосов
/ 21 октября 2019

Я не специалист по работе с python и sharepoint API, но, похоже, вы пытаетесь добавить элемент в список, а также добавлять варианты одновременно. Я считаю, что этот список должен существовать с полем выбора, что при добавлении вы просто добавляете, какой выбор вы выбираете для добавленного элемента.

Надеюсь, это может помочь.

...