# 商品编辑录入数据库
@admin.route('/goods/edit/update/',methods=['POST'])
def goods_edit_update():
data = request.values.to_dict()
goods = Goods.query.get(int(data['id']))
# data.pop('id')
print(data)
if not request.files.get('primary_pic_url', None):
data.pop('primary_pic_url')
else:
data['primary_pic_url'] = uploads('primary_pic_url')
# 执行数据添加
for i,j in data.items():
# 下面两行效果相同,直接使用goods.i = j 不会报错,但是属性更改不成功
# setattr(goods,i,j)
goods.__setattr__(i,j)
db.session.add(goods)
db.session.commit()
return '<script>alert("商品更新成功");location.href="' + url_for('admin.goods_list') + '"</script>'
类似的,import导入模块,如果模块是字符串,需要使用到 __import__(modelName)