我有一个包含两个类的解析数据库 1)"项目"与表" ItemId"和" Shop" 2)"链接"与表" ItemId"和"姓名"
我可以创建一个关系,这样我就能得到" Shop"对于所选的"姓名" ? 或者我可以合并这两个类吗?
我正在使用Swift而我正在考虑这样的事情:
var query:PFQuery = PFQuery(className:"Items")
query.orderByAscending("Shop")
query.findObjectsInBackgroundWithBlock {
(results: [PFObject]!, error: NSError!) -> Void in
if error == nil && results != nil {
query.whereKey("ItemId", equalTo:results["ItemId"] as! String)
}
答案 0 :(得分:0)
你必须在parse中设置一个指针列来连接这两个类,以便能够抓取这样的数据,这样一个人可以引用另一个。请注意,A类到B类的指针列将为A类提供对B类的引用,但不会为B类提供对A类的引用。
这里的示例:您在Links类中创建指向Items类的指针列。然后做一些事情:
// retrieve all objects from Links class
var query = PFQuery(classname: "Links")
// the string for the include key is the name of your pointer column
// this allows you to get items from the class that the pointer column points to
query.includekey("PointerToItemClass")
query.findObjectsInBackgroundWithBlock {
(results: [AnyObject]?, error: NSError!) -> Void in
if error == nil && results != nil {
for x in results! {
// this line of code reaches into the Items class and gets
// the objects under the "Shop" column
self.yourStringArray.append(x.objectForKey("PointerToItemClass")!.objectForKey("Shop") as! String)
}
}
要再次编辑,我应该补充一点,yourStringArray是一个空字符串数组,您应该在类的顶部初始化,如下所示:
var yourStringArray = [String]()
这将允许您存储从解析数据库中获取的项目