1

GAEでGoアプリケーションを作成しています。Connection{Token, ToAdress, FromAdress}

データストアに保存して、次の方法で検索できるようにします GetConnectionByT(Token string)GetConnectionByA(FromAdress,ToAdress string)

これを行うための最良の方法は何ですか?現在、私のConnectタイプには2つの異なる.key()機能があり、追加するたびに異なるキーで重複エントリを挿入しますが、これは本当に間違っていると感じます:)

datastore.NewQuery("Connection").Filter行く方法はありますか?キーがより速くそしてより安くあるべきであるというSeames?しかし、そうでない場合、複数のフィールドをフィルタリングするにはどうすればよいですか?

4

1 に答える 1

1

datastore.Query.Filterのドキュメントを確認すると、複数のフィルターがANDで結合されていることがわかります。だからあなたはこの種のことをすることができます:

q := datastore.NewQuery("Connection").
    Filter("FromAddress =", a1).
    Filter("ToAddress =", a2).
    Order("-FromAddress")

問題のエンティティのキ​​ーがある場合は、はい、キーを使用する方がおそらく高速です。ただし、質問の説明から判断するのは少し難しいです。

于 2013-02-23T22:20:08.660 に答える