質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
ニフティクラウドmobile backend

ニフティクラウドmobile backend (mBaaS)はニフティが提供するBaasサービスです。プッシュ通知、データストア、ファイルストア、会員管理・認証機能などのバックエンド機能をクラウドから提供しています。 Andoird/iOS/JavaScript/Unityと各種SDKに対応しています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

Q&A

解決済

1回答

1574閲覧

Monaca+ニフティクラウドmobile backendでのデータストア内installationクラスの項目取得+端末の項目(新項目)更新(追加)

T_Furuta

総合スコア25

ニフティクラウドmobile backend

ニフティクラウドmobile backend (mBaaS)はニフティが提供するBaasサービスです。プッシュ通知、データストア、ファイルストア、会員管理・認証機能などのバックエンド機能をクラウドから提供しています。 Andoird/iOS/JavaScript/Unityと各種SDKに対応しています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

0グッド

1クリップ

投稿2020/02/03 03:00

MonacaとNiftyCloudMobileBackendを使用して、データストア内installationクラスの項目(objectId)を取得したり、installationクラスに新しい項目を追加(更新)したいと考えてますが、下記エラーメッセージが表示され、項目の取得や追加(更新)が出来ません。

該当ソース

javascript

1 let installationid = localStorageToJson('InstallationId'); 2 confirm(installationid); 3 4 var ncmb = new NCMB(MOBILE_BACKEND_APPLICATION_KEY, MOBILE_BACKEND_CLIENT_KEY); 5 var Installation = ncmb.DataStore("installations"); 6 Installation.fetchById(installationid) 7 .then(function(installation){ 8 alert("取得できたよ。"); 9 }) 10 .catch(function(err){ 11 /* installation取得失敗時の処理 */ 12 alert("installation取得に失敗しました" + err); 13 }); 14 15 var Installation = ncmb.DataStore('installations'); 16 var installation = new Installation(); 17 18 Installation.equalTo('objectId',installationid) 19 .fetchAll() 20 .then(function(installation){ 21 alert("更新開始。"); 22 installation.set("region", "Asia"); 23 return installation.update(); 24 }) 25 .then(function(installation){ 26 alert("更新成功"); 27 }) 28 .catch(function(err){ 29 alert('更新失敗。'+err); 30 }); 31

エラーメッセージ

installation取得に失敗しましたError:cannot GET https://mbass.api.nifcloud.com:443/2013-09-01/classes/installations/g2ufmrRg28wku0zA(404) 最後のobjectidはわざと変更してます。
更新失敗。TypeError:installation.set is not a function

どこか間違えている部分があればご指摘いただけますでしょうか。
ご教授いただけると助かります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

.fetchAll() .then(function(installation) { ```のinstallationは配列なので、**TypeError:installation.set is not a function**というエラーが発生します。

投稿2020/02/03 07:58

otak-lab

総合スコア276

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

T_Furuta

2020/02/03 08:21

ありがとうございます。 ご指摘どおり、installationは配列であったため、 var installation = new Installation(); の行を抜いたところ、更新することが出来ました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問