ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

mBaaSのデータストアで扱う特殊なオブジェクト形式について

f:id:mbaasdevrel:20180913163950p:plain

mBaaSのデータストアで扱えるデータ型は次のようになっています。

  • 文字列
  • 数字
  • 日付
  • 真偽値
  • 位置情報
  • オブジェクト

これらのデータを含め、特殊な形でデータストアに入っているデータ型について解説します。

オブジェクト型について

オブジェクト型というのはJSONフォーマットで格納されているデータになります。内容は自由です。

{
  "msg": "hello"
}

日付型

日付型は文字列ではなく、オブジェクト型になります。 __type キーに Date と入っているのが特徴です。

{
  "__type": "Date",
  "iso": "2014:00:00:00.0000Z"
}

位置情報型

位置情報もオブジェクト型です。緯度経度、それぞれ入っているのが特徴です。 __typeGeoPoint という値になります。

{
  "__type": "GeoPoint",
  "latitude": 35.6580939,
  "longiture": 139.7413553
}

ポインター

他のデータと一対一で連結するポインターもオブジェクト型です。 __typePointer です。

{
  "__type": "Pointer",
  "className": "User",
  "objectId": "aaaa"
}

リレーション

多対多でデータを連結するリレーションもオブジェクト型です。ただし若干特殊です。 __typeRelation です。

{
  "__type": "Relation",
  "className": "User"
}

まとめ

特殊な型については基本的に __type というキーを持っています。その値次第で使い方が変わってきます。REST APIを使ってデータを取得すると、オブジェクト型が混ざり込んできますので注意してください。

中津川 篤司

中津川 篤司

NCMBエヴァンジェリスト。プログラマ、エンジニアとしていくつかの企業で働き、28歳のときに独立。 2004年、まだ情報が少なかったオープンソースソフトの技術ブログ「MOONGIFT」を開設し、毎日情報を発信している。2013年に法人化、ビジネスとエンジニアを結ぶDXエージェンシー「DevRel」活動をスタート。