microsoft / microsoft/azure-devops-python-api

Getting started code throws error in notebook

未关闭
#467 3 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

主要语言
Python
星标
684
派生
218
平均合并
8 天 10 小时
30 天内合并 PR
1

描述

Running this code from the Getting Started section of the readme.md:

from azure.devops.connection import Connection
from msrest.authentication import BasicAuthentication
import pprint

# Fill in with your personal access token and org URL
personal_access_token = '**removed**'
organization_url = 'https://**notthedevdomain**.visualstudio.com/'

# Create a connection to the org
credentials = BasicAuthentication('', personal_access_token)
connection = Connection(base_url=organization_url, creds=credentials)

# Get a client (the "core" client provides access to projects, teams, etc)
core_client = connection.clients.get_core_client()

# Get the first page of projects
get_projects_response = core_client.get_projects()
index = 0
while get_projects_response is not None:
    for project in get_projects_response.value:
        pprint.pprint("[" + str(index) + "] " + project.name)
        index += 1
    if get_projects_response.continuation_token is not None and get_projects_response.continuation_token != "":
        # Get the next page of projects
        get_projects_response = core_client.get_projects(continuation_token=get_projects_response.continuation_token)
    else:
        # All projects have been retrieved
        get_projects_response = None

Produces this error:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
/tmp/ipykernel_19/1987585116.py in <cell line: 19>()
     18 index = 0
     19 while get_projects_response is not None:
---> 20     for project in get_projects_response.value:
     21         pprint.pprint("[" + str(index) + "] " + project.name)
     22         index += 1

AttributeError: 'list' object has no attribute 'value'

In this environment:

ArcGIS Notebooks
Server Information:
You are using Jupyter notebook.

The version of the notebook server is: 6.4.12
The server is running on this version of Python:
Python 3.9.16 (main, Jan 11 2023, 16:05:54)
[GCC 11.2.0]

Current Kernel Information:
Python 3.9.16 (main, Jan 11 2023, 16:05:54)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.34.0 -- An enhanced Interactive Python. Type '?' for help.

To solve this error you have to remove the ".value" on get_projects_response on line 20.

while get_projects_response is not None:
    for project in get_projects_response:

rather than the current:

while get_projects_response is not None:
    for project in get_projects_response.value:

Would be cool if the readme.md could get updated to improve the onboarding experience for this package.

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

更新 readme.md 中的 Getting Started 示例,重点检查第 20 行附近遍历 get_projects_response 的循环。验证 notebook 示例能够正确迭代返回的项目,并且不再引发报告中的 AttributeError。

由索引模型根据 Issue 内容生成。

评估

技术栈
azure, python
领域
documentation
Issue 类型
文档
难度
1/5
预计耗时
1 小时以内
活跃度
停滞
描述清晰度
描述清楚
新手友好度
45/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。