SQLAlchemyのは - 私たちは、関係定義の日付の比較を使用することはできますか?

StackOverflow https://stackoverflow.com/questions/2384438

質問

私はこのマッパーが定義されています:

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を設定することで解決しました。 ミリ秒は、私が思う発行します。

リチャード・ロペス

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top