Docs Menu
Docs Home
/ /
Atlas Device SDK
/

Realm ファイル内のオブジェクトの変更

項目一覧

  • Overview
  • CSV からのインポート
  • [ CSV からのインポート ] オプションを参照してください
  • インポートする CSV を選択する
  • オブジェクトの宛先クラスを選択する
  • オブジェクトの作成
  • オブジェクト関係を考慮する
  • オブジェクトを作成する
  • オブジェクトの変更
  • フィールド値の変更
  • オブジェクトの関係の変更
  • オブジェクトの削除
  • データの保存
  • JSON ファイルを使用する
  • Realm ファイルの使用

Realm Studio では、Realm ファイル内のオブジェクトを表示および変更することができます。 ここでは、次の作業が可能です。

  • CSV からのデータのインポート

  • 新しいオブジェクトの作成

  • 既存のオブジェクトの変更と削除

その後、データを JSON または Realm ファイルとして保存し、クライアント アプリまたは本番データベースにインポートできます。

注意

データのインポート時に新しい クラスを使用する場合は、インポートを開始する前に クラスを作成する必要があります。

1

Realm StudioGoで、{0File >Import data from > に します。CSV

2

CSV ファイルの場所を確認し、選択します。

Open ボタンを押してください。

3

Realm ファイル内の使用可能なクラスを含むドロップダウン セレクターが表示されます。 インポートされたデータを オブジェクトにするクラスを選択します。

Import data ボタンを押してください。

これで、インポートしたデータから新しく作成されたオブジェクトが表示されます。 各オブジェクトのプロパティは、インポート中に選択したクラスのプロパティにマップされます。

新しいオブジェクトを作成するときは、オブジェクト間の関係を考慮してください。 たとえば、ToDo アプリにはカテゴリとタスクがあります。 カテゴリはタスクに対して対多の関係があります。 1 つのカテゴリには多くのタスクがある場合があります。 タスクは カテゴリと逆の関係にあります。

Realm では、対多の関係は 2 つのオブジェクトをリンクする listプロパティとして表されます。 ToDo アプリの例では、 Categoryクラスにはlistプロパティがあり、その値は関連するすべてのTaskオブジェクトです。

Realm Studio UI で、 Categoryクラスを選択します。 タスクを追加するカテゴリの[list-of-task]プロパティをクリックします(たとえば、「作業」など)。

Realm Studio のスクリーンショットでは、カテゴリ クラスが選択され、カテゴリ ビューの「タスクのリスト」が表示されます。

作業 と逆の関係を持つすべてのタスク オブジェクトが表示されます。 ワーク リスト内から新しいタスク オブジェクトを作成すると、Realm Studio は ワーク 親カテゴリとの逆関係を設定します。

Realm Studio のスクリーンショットでは、「作業」カテゴリに属するタスク オブジェクトと、「タスクの作成」ボタンが表示されています。

ここから、「PR 1013を確認する 」という新しいタスク オブジェクトを作成できます。 新しいタスクは、逆の関係で「作業」カテゴリにリンクされます。

ユーザーが新しいタスク オブジェクトのプロパティを入力し、「作成」ボタンを表示する Realm Studio のスクリーンショット。

Taskクラスを直接選択すると、新しいタスク オブジェクトを作成できます。 ただし、そのタスク オブジェクトは親カテゴリと逆の関係にはありません。 その後、孤立したタスク オブジェクトを、それが属するカテゴリに手動で追加する必要があり

1

Realm Studio の左側のバーには、スキーマを構成するクラスが表示されます。 作成するオブジェクトのタイプのクラスを選択します。

2

新しいオブジェクトを作成する場所を決定したら、次の 2 つの方法でこれを行えます。

  • アプリの右上隅にあるCreate {Class name} ] ボタンをクリックします

  • メインウィンドウの任意の場所で右クリック(またはコントロールクリック)してコンテキスト メニューを表示し、 を選択します Create new {Class name}

どちらのオプションも、オブジェクトのプロパティを設定できるダイアログを開きます。 必要なプロパティを指定したら、 Createボタンを押します。

リンク プロパティを使用して親オブジェクトに関連付けられていない孤立したオブジェクトを作成する場合は、リンクされたオブジェクトに手動で追加する必要があります。 「オブジェクトの変更 」を参照してください。

Realm Studio で Realm オブジェクトを変更するには、次の方法があります。

  • フィールド値の変更

  • オブジェクト関係の変更

オブジェクトのフィールド値は手動で変更できます。

  • オブジェクトの フィールドをクリックします

  • 別の値を入力

Realm Studio では、受け入れ可能なブール値オプションのリストを提供するか、日付を有効な日時に自動的に変換するなど、簡単なタイプ検証が提供されUse "true", "false", "0", or "1" 。 ただし、この検証により予期しない動作が発生する可能性があります。 たとえば、 intフィールドに「 123 aBC」を入力すると、ユーザー フィードバックやエラーは発生せず、数字以外の文字が破棄されます。 したがって、フィールド値に入力するデータが正しいタイプであることを確認する必要があります。

Realm Studio を使用して、オブジェクトと他のオブジェクトの関係を変更することができます。

新しいオブジェクト関係を追加するには:

  • 関係を定義するプロパティをクリックします

  • メインペインの任意の場所を右クリック(またはコントロールクリック)し、 を選択します Add existing {linked class name}

  • リンクするオブジェクトを選択し、 Selectボタンを押します

重要

オブジェクト関係を追加しても、既存のオブジェクト関係は削除されません。 オブジェクト関係を変更する場合は、たとえば、タスクをあるカテゴリから別のカテゴリに移動した場合、タスクを古いカテゴリにリンクした関係も削除する必要があります。

オブジェクト関係を削除するには:

  • 関係を定義するプロパティをクリックします。

  • 関係を削除するオブジェクトを右クリック(またはコントロールクリック)し、関係のタイプに応じてRemove selected row from the listまたはDelete selected objectを選択します。

  • アクションの確認を求めるダイアログが表示されます。 オブジェクトを削除または削除することを確認するには、 ボタンを押します。

Realm からオブジェクトを削除するには

  • 削除するオブジェクトを右クリック(またはコントロールクリック)し、 Delete selected objectを選択します。

  • アクションの確認を求めるダイアログが表示されます。 Delete selected object ] ボタンを押して確定します。

Tip

Delete selected objectオプションが表示されない場合は、リンク関係リスト ビューで表示されていることがあります。 オブジェクトが保存されているクラスに直接Goします。

オブジェクトが保存されている クラスにいて、 Delete selected objectsオプションが表示されない場合は、別のオブジェクトが選択されている可能性があります。 [] をクリックして削除するオブジェクトを選択し、右クリック(またはコントロールクリック)して削除オプションを取得します。

Realm オブジェクトはライブ オブジェクトであるため、Realm ファイルに変更を加え、クライアント アプリにリアルタイムで反映されるのを確認できます。 Realm Studio では、データを使用して他の操作を行います。 ファイルを保存するには、次の手順に従います。

  1. File > Save data にGoし、JSON または Local Realm を選択します。

  2. ファイルを保存するファイル名と宛先を選択します。

  3. Save ボタンを押してください。

データを JSON として保存した場合は、アプリにインポートできます。 お好みの方法で JSON をアプリにインポートします。

重要

"Flatted" ファイル

When exporting to a JSON file, Realm Studio uses the Flatted package. 別のアプリケーションでファイルを開きたい場合は、 Flatted.parse()を使用する必要があります。

データを Realm ファイルとして保存し、 スキーマを変更していない 場合は、その Realm ファイルをクライアントアプリ内の既存の Realm ファイルの直接置き換えとして使用できます。 ファイルシステム上の既存の Realm ファイルを新しいものに置き換えるだけです。

あるいは、Realm のコピーを保存し、コピーを開き、コピーでスキーマを変更することもできます。 これにより、完全な元の Realm ファイルが保持されますが、スキーマの反復処理は可能になります。 その後は、移行を実行せずに、クライアントアプリで既存の Realm ファイルを引き続き使用できます。 2 つ目の Realm ファイルを使用して、新しいスキーマの移行をテストできます。

戻る

Realm ファイルの調査