PyExcel with Flask,更新记录

时间:2015-09-23 14:40:30

标签: python flask

我正在尝试使用pyexcel导入电子表格,但我不想将现有记录添加到表中。我要么跳过它们,要么最好更新它们。

我目前正在使用带有init函数的save_book_to_database()方法。我希望能够从init函数返回None并让save_book_to_database()跳过记录,但这似乎不起作用。

我是否只需要处理代码记录插入和更新,或者是否有一个库可以更优雅地处理它?<​​/ p>

这是一个片段:

@app.route("/importEvents", methods=['GET', 'POST'])
def doEventsImport():
    if request.method == 'POST':
        def init_func(row):
            # see if this is an existing event
            eventKey = row["EventKey"]
            foundEvent = db.session.query(Event).filter_by(EventKey=row['EventKey']).first()
            if foundEvent:
                print 'foundEvent:'
                print foundEvent
                return None

            event = Event(row['EventKey'], row['Name'], row['Description'], row['BeginDate'], row['EndDate'], row['RegBeginDate'], row['RegEndDate'], row['Location'], row['Address1'], row['Address2'], row['City'], row['State'], row['Zip'], row['URL'], row['Email'], row['Phone'])
            return event

        request.save_book_to_database(field_name='file', session=db.session,
                                  tables=[Event],
                                  initializers=[(init_func)])
        return "Saved"

0 个答案:

没有答案