如何使用 GCP python SDK 比较 Firestore 时间戳

问题描述 投票:0回答:1

如何使用 Firebase 在 Python 中实现计划函数以从 Firestore 删除文档?我已成功设置该函数,但是当我尝试添加基于时间戳类型的“endDate”字段的条件时,该函数无法正确执行。任何人都可以提供有关如何在 Python 的 Firebase 计划函数中处理时间戳字段的见解或建议吗?

@scheduler_fn.on_schedule(schedule="every hour")
def check_end_date(context):
id = "static-id"
doc_ref = db.collection("name").document(id)
doc_data =  doc_ref.get().to_dict()
end_date = doc_data.get('endDate')

try:
    doc =  doc_ref.get()
    if doc.exists:
        functions.logger.info(end_date)
        # Condition will be here.
        if 1 == 1:
            doc_ref.delete()
            logging.info(f"Ad document '{id}' deleted successfully.")
    else:
        logging.warning(f"Ad document '{id}' does not exist.")
except NotFound:
    logging.error(f"Ad document '{id}' not found.")
python firebase google-cloud-firestore google-cloud-functions
1个回答
0
投票

如果您想使用 Python 在 Timestamp 类型之间执行编程比较,请参阅 Timestamp struct API 文档。有两种方法:

以及其他等式和比较器方法

在这些选项之间,您应该能够通过将文档时间戳与您自己创建的另一个时间戳进行比较来实现您的条件。

© www.soinside.com 2019 - 2024. All rights reserved.