我有一个包含大量列的表,需要从 csv 文件中填充。__init__
我在模型定义中有以下代码。[1]
class Table
column1 = ............
column2 = .............
.......
def __init__(self, **kwargs):
self.__dict__.update(kwargs)
从 csv 文件读取的代码是 (load_csv.py)
data_file = "data.csv"
csv_file = csv.DictReader(open(data_file, 'rU'), delimiter=',')
for row in csv_file:
table_entries = {}
for key, value in row.items():
table_entries[key] = value
table_row = Table(table_entries)
db.session.add(table_row)
db.session.commit()
执行 load_csv.py 时出现以下错误
table_row = Table(table_entries)
TypeError: __init__() takes exactly 1 argument (2 given)
我读到这是因为它使用的是默认值__init__
,但我看不到它为什么缺少__init__
我在代码中定义的函数。解决此问题的任何帮助将不胜感激。