簡體   English   中英

如何過濾flask-sqlalchemy中的日期時間字段

[英]How to filter a datetime field in flask-sqlalchemy

所以我試圖過濾一個字段,然后刪除該字段中的所有內容,但它不起作用。 我使用的是 flask-sqlalchemy 而不是 sqlalchemy。 編碼:

            bans = Ban.query.filter(Ban.banend >= datetime.now()).all()
            print(bans)
            for ban in bans:
                db.session.delete(ban)
            
            db.session.commit()
            print("Deleted all bans that needed to be deleted")

model:

class Ban(db.Model, JsonModel):
    ...
    banend = db.Column(db.DateTime, nullable=True)
    ...

沒有錯誤,但它沒有得到它需要的項目。

如果banend是禁令結束的日期。 我認為邏輯應該是

bans = Ban.query.filter(Ban.banend <= datetime.now()).all() 

這將返回banend在當前日期之前的所有記錄(也就是它們應該已經過期)。

如果我有誤解,您能否編輯您的問題以包括(錯誤地)退回的項目?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM