2009-06-19 23 views
7

USERTABLEがある:簡単な更新

Webページをサービング
  • ID(INT)

  • 名(STR)

  • last_login(DATETIME)

私はユーザーIDを手元に持っています。 o last_loginフィールドを 'now'に更新します。

  1. 問題更新最初にしてオブジェクト

  2. をdb_engine(マッパーを失う)

  3. またはクエリユーザーを使用して直接SQLを:

    2つの方法があるように私には思えます

どちらもうまく動作しますが、コードがかなりうんざりしています。

誰も、sqlalchemyを使用してupdate-with-no-queryを行うより洗練された方法を知っていますか?この権利を持っている他のORMはいますか? docs

DBSession.query(UserTable).filter_by(id = user_id).\ 
    update({"last_login":datetime.datetime.now()}, synchronize_session=False) 

追加パラメータ:あなたが代わりにマッパーUSERTABLEを持っていると仮定すると

おかげ

答えて

23

+1

docsへの実際のリンク:http://docs.sqlalchemy.org/en/latest/orm/query.html#sqlalchemy.orm.query.Query.update – NorthCat

関連する問題