Dies ist die Funktion, die ich zum Abfragen der Datenbank verwenden:PFQuery mit mehreren Arrays in UITableView
func loadRestaurantMeals(){
let mealsQuery = PFQuery(className: "Meals")
mealsQuery.whereKey("Restaurant", equalTo: selectedRestaurant!)
mealsQuery.whereKey("MealCategory", equalTo: selectedMenuHeading!)
mealsQuery.findObjectsInBackgroundWithBlock{ (objects: [PFObject]?, error: NSError?) -> Void in
if error == nil{
//after successfull fetch
if let fetchedMeals = objects{
print("c")
for fetchedMeal in fetchedMeals{
print("writing to name")
self.restaurantMealsArray.append(fetchedMeal.objectForKey("MealName") as! String)
print("writing to description")
self.mealsDescriptionArray.append(fetchedMeal.objectForKey("MealDescription") as! String)
print("writing to price")
self.mealsPriceArray.append(fetchedMeal.objectForKey("MealPrice") as! Double)
}
//display content
print("before reload data")
self.mealsTableView.reloadData()
print("reload data")
}
}else{
// Log details of the failure
print("Error: \(error!) \(error!.userInfo)")
}
}
}
Hier sind alle UITableView Funktionen:
func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return restaurantMealsArray.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell = tableView.dequeueReusableCellWithIdentifier("mealCell", forIndexPath: indexPath) as UITableViewCell
print("a")
cell.textLabel?.text = restaurantMealsArray[indexPath.row]
print("b")
cell.detailTextLabel?.text = mealsDescriptionArray[indexPath.row]
print("c")
//cell.label
return cell
}
Aus irgendeinem Grund die reloadData()
nie genannt wird, . Die Konsole meldet den folgenden Fehler:
fatal error: unexpectedly found nil while unwrapping an Optional value
Was die Ursache dafür sein könnte?
Auf welcher Linie genau erhalten Sie die Ausnahme? – Lasse
Haben Sie versucht, fetchedMeal zu drucken? MealName, MealDescription, MealPrice-Typen sind nicht optional. – ridvankucuk
Dieser Fehler wird nur angezeigt, sobald ich die App ausgeführt und diesen spezifischen Tabellenansichtcontroller eingegeben habe –