0

アドオンとして MongoLab で構成された、Heroku に解析サーバーがあります。クライアントに接続できるようになり、PFObject の配列を取得することもできます。

MongoLab に関する 2 つのドキュメントがあります:RecipeIngredient. 私の問題は、MongoLab で PFRelation を定義する方法です (Parse BaaS での方法と同様)。クライアント コードをあまり変更したくありません。

MongoLab は、埋め込みドキュメントまたはドキュメント参照との 1 対多の関係を使用できることがわかりました。両方を試しましたが、毎回このエラーが発生しました: [Error]: {"code":1,"message":"Internal server error."} (Code: 1, Version: 1.12.0)

埋め込みドキュメントを使用した試みは次のとおりです。

{
    "_id": {
        "$oid": "56c581f3e4b07bf05b29fac6"
    },
   "name": "Banana pancake",
   "steps": [
       "Mix",
       "Cook"
   ],
   "ingredients": [
        {
            "category": "Diary and eggs",
            "name": "eggs",
            "quantity": "3",
            "unit": "pc"
        }
    ]
}

これが私の迅速なコードです:

 menuRecipes.map {
  $0.ingredients.query().findObjectsInBackground(). .....
 }
4

1 に答える 1

1

解析サーバーは、parse.com と同じ方法でリレーションを処理します。ただし、ネイティブ mongo 関係はサポートされていません。今のところ、データベースでこれらの関係を手動でセットアップする必要がありますが、これはエラーが発生しやすいものです。つまり、次のようにすることができます。

"ingredients": [{
    "__type": "Pointer",
    "className": "Ingredient",
    "objectId": "tnYLlRXChj",
    "category": "Diary and eggs",
    "name": "eggs",
    "quantity": "3",
    "unit": "pc"
}]

また、ドキュメントのフィールドが に設定されていることを_SCHEMAコレクションで確認してください。Recipeingredientsarray

于 2016-02-27T00:32:53.080 に答える