2015-09-06 20 views
1

在我的應用程序中,我有一個表格加載用戶的評論。在解析中,我有一個「評論」類。在這個類中有一個圖像列(稱爲「圖像」)和一列用於評論的單詞(稱爲「評論」)。查詢值可能爲零分析

爲了提交評論,用戶必須在文本框中輸入內容。(所有評論必須具備的話)。但是,並非所有的評論必須與他們(用戶可以選擇不張貼圖片)相關的圖像下面是我當前的代碼來檢索評論:

 var query6 = PFQuery(className: "Comments") 
     query6.whereKey("to_post", equalTo: post!) 
     query6.findObjectsInBackgroundWithBlock({ (caption: [AnyObject]?, erreur: NSError?) -> Void in 
       if erreur == nil { 
       // on a réussi 

      for caption in caption! { 
           self.newArray.append(caption["theComment"] as! String) 
           self.commentPhotoArray.append(caption["images"] as! PFFile) 

    } 
     self.tableView.reloadData() 

    } 
    else { 
     // on n'a pas réussi 
    } 

}) 

的問題雖然是這條線:

self.commentPhotoArray.append(caption["images"] as! PFFile) 

說「意外發現零,同時展開可選值「,因爲並非所有保存的註釋都具有關聯的圖像。有沒有辦法解決?我試圖設置它,以便如果用戶不手動上傳照片,它會保存一個我導入到圖像資源的虛擬圖像,而這可以工作,只要當我打開圖像數據時(在cellforRowatIndexPath中)它識別虛擬圖像並適當地將圖像視圖約束的高度設置爲0(換句話說,不顯示圖像),僅留下注釋以顯示。有關如何解決此問題的任何想法?

回答

0

您可以嘗試在打開包裝之前檢查是否有可用的圖像。我無法輕易測試此代碼,因此如果您能看到是否有錯誤會很好。

if caption["images"] != nil { 
self.commentPhotoArray.append(caption["images"] as! PFFIle) 
} 
+0

有時!= nil不起作用,您必須使用不同的測試方法來查看標題[「images」中是否有圖像。 –

+0

我試過了,它不起作用。 – joey

+0

在編譯之前或在模擬器或設備上加載應用程序之後,哪些部分不起作用? –

0

試試這個:

 var query6 = PFQuery(className: "Comments") 
     query6!.whereKey("to_post", equalTo: post!) 
     query6!.findObjectsInBackgroundWithBlock { 
      (objects: [AnyObject]?, error: NSError?) -> Void in 

      if error == nil { 

       print("Successfully retrieved \(objects!.count) scores.") // This will print how many objects are in your Class. 

       if (objects!.count > 0) { 

       for caption in objects! { 
          self.newArray.append(caption["theComment"] as! String) 
          self.commentPhotoArray.append(caption["images"] as! PFFile) 

        } 
       self.tableView.reloadData() 

       } else { 
        // Log details of the failure 
        print("Error: \(error!) \(error!.userInfo)") 
       } 
      } 
     } 

我也不得不說,我很深刻的印象,在法國人的編碼...... IDK如果這是你或其他人,但很酷;)