1

我正在使用 gdata-python-client 库 (http://code.google.com/p/gdata-python-client/) 将联系人插入 Google 帐户。当我这样设置性别时:

google_contact.gender = gdata.contacts.data.Gender(text="Male")

它实际上是在“目录服务器”字段中的联系人上设置的。

任何想法为什么会发生这种情况?

如果它影响任何东西,我的代码在 Google App Engine 开发服务器上运行。

4

2 回答 2

5

真的,我告诉你,这确实是 gData 客户端中的一个错误。这是包含错误的行,这是我提交的有关该问题的错误报告,这是我提交的解决该问题的补丁

在上游修复未决时修补本地库副本的细节留给读者练习。

于 2012-01-30T06:12:19.187 回答
2

这可能是 gdata 库中的错误。至少我是这么看的。这里不是 google-contact 专家

考虑一下:

>>> print gdata.contacts.data.City(text="Foo")
<ns0:city xmlns:ns0="http://schemas.google.com/contact/2008">Foo</ns0:city>

而性别返回这个:

>>> print gdata.contacts.data.Gender(text="Male")
<ns0:directoryServer xmlns:ns0="http://schemas.google.com/contact/2008">Male</ns0:directoryServer>

当然你可以手动修改 Gender 对象的 tag 属性:

>>> g = gdata.contacts.data.Gender(text="Male")
>>> g.tag='gender'
>>> print g
<ns0:gender xmlns:ns0="http://schemas.google.com/contact/2008">Male</ns0:gender>

希望这可以帮助

于 2012-01-27T15:55:18.540 回答