2

我正在使用atlassian-python-api更新页面,如文档中所述:

from atlassian import Confluence

conf = Confluence(url=srvr, username=usr, password=pswd)

page_id = '12345'

new_page_title = 'This is a new title'
new_page_body = '<p>This is a new body</p>'

conf.update_page(page_id, new_page_title, new_page_body)

这工作正常。我现在想添加一个更新评论/提交消息,就像手动编辑页面时可以输入的一样(“你改变了什么? ”)。

的 atlassian-python-api 文档update_page()没有这样的选项。可能吗?

我试图更改页面正文以包含此内容

data = {
    'id': {page_id}
    'title': new_page_title,
    'body': {
        'storage':{
            'value': new_page_body,
            'representation':'storage',
        }
    },
    'version': {
        'number': 2
    },
    'comment': 'Changed the title and the body.'
}

但我想这不是如何update_page()工作的,我得到一个

AttributeError:“dict”对象没有属性“strip”

4

1 回答 1

1

这实际上是直接可能的update_page(),虽然你是正确的,但它没有记录在方法的文档中。

我在源代码中发现该方法update_page()采用可选参数version_comment。这是您要设置的注释。

扩展您的示例:

from atlassian import Confluence

conf = Confluence(url=srvr, username=usr, password=pswd)

page_id = '12345'

new_page_title = 'This is a new title'
new_page_body = '<p>This is a new body</p>'
commit_msg = 'Changed the title and the body.'

conf.update_page(page_id, new_page_title, new_page_body, version_comment=commit_msg)

这应该做你想要的。

于 2021-03-25T00:19:46.623 回答