零代码基础使用简道云API(四)——简道云完整的增、删、改、查python语言的类
零代码基础使用简道云API 5:修改或新增的完善
简道云API 6: 日期时间转北京时间的类方法
(接着上几篇文章续写) 问题:在简道云表单字段中,成员单选字段和成员多选字段通过API获取数据后,不能直接写入到其它表单的成员字段中。回写到表单成员字段中的话,必须进行处理。 分析:1.这是成员单选的一个值,有三个元素,一般用username作为唯一元素值;{'_id': '5dab22c1ed152e000618e44a', 'name': '李四', 'username': 'lisi'}
2.通过读出username的值,可以对简道云的表单的成员字段进行回写。
实现功能:1.实现成员字段的API回写功能;2.可以通过API回写成员字段数据,实现外链表单获取成员数据的作用。 解决方法1:直接写执行代码,直接加入到自己的代码中就可以使用#成员单选字段username1 = data['_widget_1546215679118'] if username1 is not None: username = str(username1 ['username']) else: username = str([''])#成员多选字段 usernames1 = data['_widget_1581570481154'] usernames = list([]) for each in usernames1 : usernames .append(each['username'])
解决方法2:封装成函数,调用就可以
# 根据成员单选值,查找出username值,供写入mysql使用和写回简道云表单时使用def get_single_username(user_single): if user_single is not None: username = str(user_single['username']) else: username = "" return username# 根据成员多选值,查找出username值,供写入mysql使用和写回简道云表单时使用def get_multi_usernames(users_multi): usernames = [] for each in users_multi: usernames.append(each["username"]) return usernames
解决方法3:封装成类方法,供所有的简道云API运用
# 根据成员单选值,查找出username值,供写入mysql使用和写回简道云表单时使用def get_single_username(self, user_single): if user_single is not None: username = str(user_single['username']) else: username = "" return username# 根据成员多选值,查找出username值,供写入mysql使用和写回简道云表单时使用def get_multi_usernames(self, users_multi): usernames = [] for each in users_multi: usernames.append(each["username"]) return usernames