我在 pyexcel 的 save_to_database 函数中的 mapdict 参数遇到了一些问题。
看来我仍然需要在文件的开头有一行列名,否则会出错。一旦将它们转换为字典,mapdict 是否不指定每列要使用的名称?
我非常不确定这个论点实际上做了什么......
任何帮助,将不胜感激!!
我在 pyexcel 的 save_to_database 函数中的 mapdict 参数遇到了一些问题。
看来我仍然需要在文件的开头有一行列名,否则会出错。一旦将它们转换为字典,mapdict 是否不指定每列要使用的名称?
我非常不确定这个论点实际上做了什么......
任何帮助,将不胜感激!!
看,如果你有这样的 CSV,这很简单:
brand,sku,description,quantity,price
br,qw3234,s sdf sd ,4,23.5
br,qw3234,s sdf sd ,4,23.5
br,qw3234,s sdf sd ,4,23.5
br,qw3234,s sdf sd ,4,23.5
你不需要mapdict
但如果你的 CSV 没有第一行,你需要它。例如我的烧瓶项目中的一种和平:
def article_init_func(row):
warehouse = Warehouse.query.filter_by(id=id).first()
a = Article()
a.pricelist_id = p.id
a.sku=row['sku']
a.description=row['description']
a.brand=row['brand']
a.quantity=row['quantity']
a.city=warehouse.city
a.price=row['price']
return a
map_row = ['brand', 'sku', 'description', 'quantity', 'price']
request.save_to_database(
field_name='file', session=db.session,
initializer = article_init_func,
table=Article,
mapdict=map_row)