我在Heroku上有一个解析服务器,配置了MongoLab作为附加组件。 我现在可以与客户端连接,甚至可以检索PFObjects数组。
我在MongoLab上有2个文档:Recipe
和Ingredient
。
我的问题是如何在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(). .....
}
答案 0 :(得分:1)
解析服务器以与parse.com相同的方式处理关系。但是不支持本机mongo关系。您现在必须在数据库中手动设置这些关系,这很容易出错。也就是说,可以这样做:
"ingredients": [{
"__type": "Pointer",
"className": "Ingredient",
"objectId": "tnYLlRXChj",
"category": "Diary and eggs",
"name": "eggs",
"quantity": "3",
"unit": "pc"
}]
另请确保_SCHEMA
集合中Recipe
文档的字段ingredients
设置为array
。