为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 GoLang 在 Google App Engine Datastore

如何使用 GoLang 在 Google App Engine Datastore

Go
长风秋雁 2021-08-10 21:08:05
我正在研究在 Google App Engine 上运行的 golang 后端。我有一个名为 Entity 的实体Recruit,它有一个属性UpdatedAt time.Time `datastore:"updated_at"`我想通过他们的更新时间查询新兵。我的第一直觉是使用过滤器。query = datastore.NewQuery("Recruit").Filter("updated_at <=", updatedAt)其中 updatedAt 是一个字符串。我已经尝试了这些形式2014-08-28 01:53:19和2014-08-28T01:53:19.00618Z(前者是 time.Time 属性在数据存储中采用的形式,而后者是它在 JSON 中的传播方式。)当我使用 调用查询时<=,将返回所有 Recruit 对象。调用 with 时>=,返回 null。我很确定我正在测试数据集中间的时间。当我在 console.developers.google.com 上测试时,控制台过滤器支持a date and time after/before,但尝试<=用after结果替换会导致错误。有没有人设法按日期或时间过滤查询?
查看完整描述

1 回答

?
Helenr

TA贡献1780条经验 获得超4个赞

尝试使用 time.Time 类型的 updatedAt 而不是字符串


以下是我如何按时间过滤查询的片段:


我的财产:


TimeStamp time.Time

我的查询:


timeNow := time.Now()

time1hr := timeNow.Add(-59*time.Minute)

q := datastore.NewQuery("Recruit").Filter("TimeStamp <=", time1hr)

此代码将在 time1hr 之前为我提供所有实体。


查看完整回答
反对 回复 2021-08-10
  • 1 回答
  • 0 关注
  • 205 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信