使用Python的simple-salesforce访问Salesforce元数据

5
阅读simple-salesforce文档时,只显示使用硬编码方法访问对象元数据,例如:
sf.Contact.metadata()

有没有办法做类似这样的事情?
sf["Contact"].metadata()

我想循环遍历一个对象列表并检索所有这些对象的字段,但似乎由于上面所见的限制,这似乎是不可能的。
for obj in objects:
    fields = [x["name"] for x in sf[obj].describe()["fields"]]
    # processing for each object

有没有一种方法可以使用字符串参数访问对象元数据,而不是硬编码的值?
1个回答

5

sf接口实际上是对Salesforce类中的get_attr方法的调用。

get_attr返回SFType(name, self.session_id, self.sf_instance, self.sf_version, self.proxies)的值。

您可以根据需要对以下内容进行操作:

from simple_salesforce import SFType
....
sf_object = ['Case', 'Contact', 'Account', 'Custom1__c', 'Custom2__c']
for each in sf_object:
    SFType(each, sf.session_id, sf.sf_instance, sf.sf_version, sf.proxies).metadata()

希望这能帮助到您。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接