Docs Menu
Docs Home
/ /
Atlas Device SDK
/

Device Sync による Atlas データの表示

項目一覧

  • 前提条件
  • Realm Studio から Atlas への接続
  • Atlas Device Sync 経由で接続を選択する
  • リクエストされたメタデータを提供する
  • 接続
  • 同期データの指定
  • サブスクリプションを追加する
  • サブスクリプションの削除
  • 同期された変更をリアルタイムで表示

Realm Studio で Device Sync を使用して MongoDB Atlas に接続できます。 Realm Studio は、Device Sync を使用するアプリケーションと同様に、同期クライアントとして機能します。 ここでは、次の作業が可能です。

  • フォーカスするオブジェクト スキーマのサブスクライブを追加および削除します。

  • Realm Studio から Atlas データを直接操作します。

Realm Studio を使用して、開発環境でアプリを実行中に行ったデータの変更を確認したり、権限やサブスクライブの変更を試すことができます。

Realm Studio の最小バージョン: 14.1.2 。

Device Sync は Atlas App Services アプリを介して Realm Studio を App Services バックエンドに接続するため、開始する前に次の操作を行う必要があります。

  1. 認証が有効になっている Atlas App Services App 方法については、App Services ドキュメントの「 App Services Appの作成」を参照してください。

  2. App Services App ID 。 アプリ ID を見つける方法については、「 アプリ ID の検索 」を参照してください。

Realm Studio は、次のいずれかの認証プロバイダー タイプを使用して、Device Sync 経由で接続できます。

  • 匿名

  • メールとパスワード

  • API キー

  • JSON web token

アプリで メールとパスワード、 APIキー、またはJSON web token認証を使用する場合は、 Realm Studioから接続するときに使用する適切なタイプの認証情報を作成する必要があります。 認証情報の作成の詳細については、App Services のドキュメントを参照してください。

1

Realm Studio を開き、 Connect via Atlas Device Syncをクリックします。

2
  1. アプリ ID を指定します。

  2. App Services Appが カスタムURLを使用する場合は、 URLを指定します。

  3. アプリが使用する認証の形式を選択します。 認証情報が必要な認証形式を選択した場合は、認証情報を提供してください。

3

[Connect] をクリックします。

正常に接続すると、Realm Studio はアプリケーション ウィンドウのメニューバーにアプリ ID を表示します。 複数の App Services アプリへの接続を同時に開くことができます。 変更をリアルタイムで表示する場合は、同じ App Services App への複数の接続を開くこともできます。

Atlas に接続すると、Realm Studio には App Services App のスキーマに一致するオブジェクトタイプのリストが表示されます。

App Services スキーマの詳細については、App Services ドキュメントの「スキーマ」を参照してください。

Realm Studio はこれらのスキーマを Realm オブジェクトにマッピングします。 Device Sync を使用してこれらのスキーマが Realm オブジェクトにマッピングされる方法の詳細については、App Services ドキュメントの「データモデル マッピング 」を参照してください。

各オブジェクト タイプのサブスクリプションを追加するまで、オブジェクト タイプのデータは表示されません。 サブスクライブとアプリに対して定義した権限によって、同期されるデータが決まります。

特定のオブジェクト タイプのデータの表示を開始するには、サブスクライブを追加します。 表示されるデータを変更するには、次のいずれかの方法を実行します。

  • 追加のフィルタリングを適用するには、サブスクライブを追加します。

  • サブスクライブを削除します。

Realm Studio に追加したサブスクライブを変更することはできません。 サブスクライブを変更するには、削除して新しいサブスクライブを追加します。

1

App Services App に複数のオブジェクト タイプのスキーマがある場合は、Realm Studio ウィンドウの左のペインのオブジェクトタイプ名のリストとして表示されます。

オブジェクトタイプ名をクリックして、そのオブジェクトタイプを選択します。

2

オブジェクトタイプを選択すると、Realm Studio ウィンドウの左ペインの下部に+ボタンを持つSubscriptionsラベルが表示されます。

ラベルの横にある+をクリックすると、 Add subscription on Objectモーダルが開きます。

3

RQL ( RQL )を使用して、 Realm Studioと同期するオブジェクトのクエリを作成します。 クエリに一致するオブジェクトのみが Realm Studio に表示されます。 アプリケーション開発時に、クエリを迅速に検証する方法としてこれを使用できます。

サブスクライブ クエリには、少なくとも 1 つのクエリ可能なフィールドを含める必要があります。 クエリ可能なフィールドの詳細については、App Services ドキュメントの「 クエリ可能なフィールド」を参照してください。

使用可能なクエリ演算子の詳細については、 RQLリファレンスを参照してください。

Device Sync は、Sync サブスクライブ クエリで RQL 演算子のサブセットの使用をサポートしています。 これらの制限の詳細については、「 Flexible Sync RQL の制限 」を参照してください。

テンプレート アプリでDevice Sync をブートストラップする場合、テンプレート アプリが使用するサブスクリプションは次のとおりです。

`owner_id == "${user?.id}"`

Realm Studio で該当するデータを表示するには、特定のユーザーの ID を指定して次のクエリを使用します。

owner_id == "67ee25f483c29fa14cfd7295"

Realm Studio に提供した認証情報に適切な権限があるすべてのデータを表示するには、 クエリを使用します。

TRUEPREDICATE
4

サブスクライブを追加するプロセスを完了するには、 Add subscriptionをクリックします。 これにより、Device Sync との最初の同期がトリガーされます。

  • 選択したオブジェクトタイプの項目。

  • 提供したサブスクライブ クエリに一致するもの。

  • Realm Studio へのログインに使用した認証情報に アイテムを表示する権限がある場合、

一定時間の経過後、オブジェクト数は0から、この条件を満たすオブジェクトの数を反映して変化するのがわかります。

5

App Services App には複数のオブジェクトタイプのスキーマがある場合があります。 Realm Studio で表示するオブジェクトタイプごとに、サブスクリプションを個別に追加する必要があります。

対 1 または多対多の関係のように、 オブジェクトに他のオブジェクトへのリンクが含まれている場合は、リンクされたオブジェクトタイプに適切なサブスクリプションを追加するまで、リンクされたオブジェクトは Realm Studio に表示されません。

1

Realm Studio ウィンドウの左側のペインでオブジェクトタイプ名をクリックして、そのオブジェクトタイプを選択します。

2

をクリックしますサブスクライブを削除します。 アイコンが表示されない場合は、ドラッグして左のペインを展開します。 長期サブスクライブでは、表示可能領域からアイコンが排除されることがあります。

サブスクリプションを削除すると、サブスクリプションに一致するデータは Realm Studio から消えます。

サブスクリプションを追加すると、アプリのルールに基づいて認証情報で許可されている場合は、 オブジェクトを作成、更新、および削除できます。 Device Sync に接続しているときにオブジェクトに変更を加えると、それらの変更は Atlas や他のデバイスと自動的に同期されます。 変更がリアルタイムに反映されるのを確認できます。

Realm Studio でオブジェクトを作成、変更、削除する方法の詳細については、「 Realm ファイル内のオブジェクトの変更」を参照してください。 Device Sync に接続しているときに行った変更を保存するために、何もする必要はありません。 これらの変更は自動的にサーバーと同期され、Atlas に保持されます。

サブスクリプションに一致しないオブジェクト、または書込み (write) 権限がないオブジェクトを変更または追加しようとすると、Device Sync はそれを修正する書込みエラーで応答します。 Realm Studio はこれらの変更を元に戻し、Atlas または他のデバイスと同期しません。 詳しくは、App Services ドキュメントの「 Flexible Sync エラー」セクションでErrorCompensatingWriteを参照してください。

戻る

Realm Studio