我遇到一个问题,我认为这是一个简单的脚本工作,我认为这只是我不知道如何使变量工作。
我正在开发一个抓取对象列表的salesforce脚本,然后查看对象列表以获取表格中的所有字段。
python中的这个查询完美地为我提供了我已经拉入数据库的对象列表
query = ("SELECT obj_name FROM syncsfobjects")
cursor.execute(query)
然后循环浏览这些记录
for x in cursor:
现在这就是我的问题所在,我想在下一个语句中使用我的查询中的obj_name
for xy in sf.%obj_name%.describe()["field"]:
我遇到的大问题是将obj名称放入这个简单的salesforce查询中。
如果我创建一个字符串就可以正常工作
objectname = str(x)
sfquery = 'sf. %s .describe()["fields"]' % objectname
但是当我使用sfquery进行下一个循环时,所有循环都会遍历字符串中的每个字母,而不是运行sf connection命令。
我错过了什么简单的东西?
欢呼声 担
答案 0 :(得分:2)
for xy in sf.%obj_name%.describe()["field"]:
Python不会让你做'#34;替换"在字符串之外,但如果你拥有的只是他们的名字,你仍然可以访问属性:
for xy in getattr(sf, objectname).describe()["field"]: