我正在開發(fā)一個(gè) Go 應(yīng)用程序,其中我有一個(gè)帶有屬性的實(shí)體,該屬性包含一個(gè)隨機(jī)字節(jié)串的標(biāo)識(shí)令牌。我將此屬性存儲(chǔ)為 ByteString,并且在我的開發(fā)環(huán)境中,我已經(jīng)能夠使用以下形式的過濾器查詢此屬性:// token is a []byteidTok := datastore.ByteString(token)q := ds.NewQuery("Entity").Filter("IDToken =", idTok)var entities []Entitykeys, err := q.GetAll(c, &entities)但不幸的是,當(dāng)作為模塊部署到 GAE 時(shí),此查詢返回錯(cuò)誤:datastore: bad query filter value type: unsupported datastore value type: datastore.ByteString,這令人困惑,因?yàn)槲艺J(rèn)為 ByteString 類型的目的是能夠索引 500 字節(jié)以下的更短數(shù)量的二進(jìn)制數(shù)據(jù)。我首先根據(jù)這個(gè) SO 問題的第二個(gè)答案切換到使用 ByteString 類型:Golang - Appengine datastore filter query with []byte compare
1 回答

牧羊人nacy
TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超7個(gè)贊
大約一周后,此問題自行解決。由于它只出現(xiàn)在模塊環(huán)境中,我猜測他們的某些代碼沒有更新以支持 ByteString 類型,現(xiàn)在是?,F(xiàn)在效果很好!
- 1 回答
- 0 關(guān)注
- 216 瀏覽
添加回答
舉報(bào)
0/150
提交
取消