请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

update方法似乎写的有点问题?

课件里写的是:

def update(self, set_column_list, where_list):
    print("调用update方法")
    args = []
    fields = []
    for key in set_column_list:
        fields.append(key)
    for key in where_list:
	    args.append(key)
	# 这里是健壮性判断
	for key in set_column_list:
		if key not in fields:
			raise RuntimeError("field not found")

在健壮性判断那里, fields 的元素本来就是从set_column_list加进来的, 这里的判断似乎没有意义吧. 当然,理解老师的意思, 应该是

for k in self.__mappings__.keys():
    fields.append(k)

这样fields里存的才是__mappings__的key, 可这里仍然有一个问题: set_column_list里存的应该是形如name='小明'这样的 字段名=值的形式吧, 那应该怎样把__mappings__里的key和set_column_list的每个元素的等号前面的key比较呢?

正在回答 回答被采纳积分+3

1回答

大周 2020-10-12 11:20:08

好像确实是这样的,学的很仔细。 set_column_list这个变量里应该就是key的一个列表,做比较的话应该是取出来__mappings__里的key值。 按照你的想法改一下代码试试,看能实现这个功能不。 代码可以有多种写法的。 多尝试。 

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信