0

バックエンドレスにテーブル Places があり、フィールド Events (別のテーブルとの関係) があります。Events テーブルには、Places テーブルと関係を持つフィールド Places があります。というわけで、Place フォームの Event オブジェクトを取得したいと思います。Events オブジェクトを読み込もうとすると、Place フィールドが読み込まれません。では、どうすればいいですか?私が言いたいことをより明確にするために画像を添付しました) ここに画像の説明を入力 ここに画像の説明を入力

4

1 に答える 1

3

あなたの関係は本当に一方向です。コンソールを見るとわかりにくいかもしれませんが、関係は Places から Events になります。コンソールが Events テーブルを表示すると、"Places.events" は "child of" 関係であることが示されます。これは参考用であり、イベント スキーマの一部ではありません。

それでも、関連する Events オブジェクトを指定して、関連する Place オブジェクトをロードすることは可能です。これは、クエリベースの検索を使用して行うことができます。Java のサンプル コードを次に示します (使用する言語に関係なく、クエリの構文は同じになります)。

BackendlessDataQuery query = new BackendlessDataQuery();
query.setWhereClause( "events.objectId = 'C4C02F1A-38B3-63F2-FFEB-41C02EF25700'" );
BackendlessCollection<Places> places = Backendless.Data.of( Places.class ).find( query );

Iterator<Places> iterator = places.getCurrentPage().iterator();

while( iterator.hasNext() )
{
    Places p = iterator.next();
    System.out.println( p.objectId );
}

クエリは"events.objectId = 'C4C02F1A-38B3-63F2-FFEB-41C02EF25700'"であることに注意してください。ここで、参照されるオブジェクト ID は Event オブジェクトの 1 つです。リクエストは Places テーブルに対して実行されるため、クエリは文字通り、「関連する「events.objectId」が指定された値であるすべての Places オブジェクトを検索する」ことを意味します。

お役に立てれば。

于 2015-02-15T03:00:22.230 に答える