SQLAlchemyのは - 私たちは、関係定義の日付の比較を使用することはできますか?
-
24-09-2019 - |
質問
私はこのマッパーが定義されています:
mapper(Resource, resource_table,
properties = {'type' : relation(ResourceType,lazy = False),
'groups' : relation(Group, secondary = model.tables['resource_group'],
backref = 'resources'),
'parent' : relation(Relation, uselist=False, primaryjoin =
and_(relation_table.c.res_id == resource_table.c.res_id,
relation_table.c.end_date > datetime.now())),
'children' : relation(Relation, primaryjoin =
and_(relation_table.c.parent_id == resource_table.c.res_id,
relation_table.c.end_date > func.now()))})
私は関係テーブルに新しい行を作成し、古い日付に関連した古い行のEND_DATEを変更する場合は、しかし、いくつかの理由のために、プロパティの親は更新されません。 リソース行をリロードする場合にも、古い日付の古い関係が表示され、私はかなり確信しているので、それはマッパーの日付の比較に関係しています。
私はフラグ欄の文字列または整数でEND_DATEを交換し、フラグの比較を行う場合は、私は、適切な動作を得るが、私は日付を使用したいです。
すべてのヘルプは大歓迎です。
おかげで、
リチャード・ロペス
解決
私は実際には間違っていたものを発見しました。 関係は、実際に働いています。 リソースが実際にSQLAlchemyのでリフレッシュされる前にそれが起こるので、1秒 - 問題はdatetime.nowのようなもの()にEND_DATEを設定することで解決しました。 ミリ秒は、私が思う発行します。
リチャード・ロペス
所属していません StackOverflow