我在Heroku上有一个解析服务器,配置了MongoLab作为附加组件。
我现在可以与客户端连接,甚至可以检索PFObjects数组。

我在MongoLab上有2个文档:RecipeIngredient
我的问题是如何在MongoLab上定义PFRelation(就像在Parse BaaS上一样)。我不想过多修改客户端代码。

我看到MongoLab可以与嵌入式文档或文档引用使用一对多关系。我都尝试过,但每次遇到此错误时:
[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(). .....
 }

最佳答案

解析服务器以与parse.com相同的方式处理关系。但是不支持本地mongo关系。您现在必须在数据库中手动设置这些关系,这很容易出错。也就是说,可以执行以下操作:

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


还要确保在_SCHEMA集合中,Recipe文档的ingredients字段设置为array

关于swift - 像在Parse上一样,如何在MongoLab上定义PFRelation?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35551200/

10-09 17:32