【发布时间】:2018-12-10 05:35:45
【问题描述】:
以下代码失败,因为电子邮件字段实际上是一个列表,我想知道在应用引擎中处理此问题的正确/高效/惯用方式是什么?
type Person struct {
Name string
Company string
Email []EmailAddress
}
type EmailAddress {
Type string // home, office, etc...
Email string
}
var items []Person
q := datastore.NewQuery("Person").Filter("Company =", company).Filter("Email = ", email).Limit(1)
_, err := a.client.GetAll(a.ctx, q, &items)
它失败并显示以下消息,我认为这是由于电子邮件字段是一个“集合”的事实:
datastore: bad query filter value type: invalid Value type func() string
我是否必须做一些事情,比如拆分电子邮件地址字段,即:
type Person struct {
Name string
Company string
EmailType []string // home, office
EmailAddress []string // bob@work, bob@home
}
【问题讨论】:
标签: google-app-engine google-cloud-platform google-cloud-datastore