解析关系/合并表<swift>

时间:2015-09-28 04:12:42

标签: swift parse-platform

我有一个包含两个类的解析数据库 1)&#34;项目&#34;与表&#34; ItemId&#34;和&#34; Shop&#34; 2)&#34;链接&#34;与表&#34; ItemId&#34;和&#34;姓名&#34;

我可以创建一个关系,这样我就能得到&#34; Shop&#34;对于所选的&#34;姓名&#34; ? 或者我可以合并这两个类吗?

我正在使用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)
}

1 个答案:

答案 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]()

这将允许您存储从解析数据库中获取的项目