课件里写的是:
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比较呢?