2017-09-22 3 views
0

모델 클래스를 사용하여 배열에서 데이터를 가져 오지는 않지만 배열에 데이터가 있습니다. 나는 모델 클래스를 사용하는 정확한 방법을 모른다. 어쩌면 내가 구현 한 방식이 잘못되었을 수도 있습니다. 안내해주십시오. 코드는 다음과 같습니다 :배열에서 데이터를 모델 클래스로 분할하는 방법

// . ViewController class 

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
    // let cell: VisitorsCell = tableView.dequeueReusableCell(withIdentifier: "VisitorsCell", for: indexPath) as! VisitorsCell 

    let cell:RecentVisitorsCell = self.tblView.dequeueReusableCell(withIdentifier: "VisitorsCell") as! VisitorsCell 

    **let ds:VisitorDs = recentVisitorsArray[indexPath.row] as! VisitorsDs // . crash here.//** 

    // let ds = VisitorsDs() 

    cell.imgProfile.image = UIImage(named: ds.profile) 
    cell.lblAge.text = ds.age as String 

    return cell 

} 
//MARK: Delegatres Server Communication 
func didFinishServerCommunicationWithSuccess(_ response:ServerResponse){ 
    print("api response: ", response.infoResponse?["data"] as! [AnyObject]) 

    //VisitorsArray = response.infoResponse?["data"] as! [AnyObject] as NSArray 

    //if response.operation == "SERVICE_SOURCE" { 
     if let dictResult = response.infoResponse as? NSDictionary { 
      if let arrResult = dictResult.object(forKey: "data") as? NSArray 
      { 
      for result in arrResult { 
       let Visitors = VisitorsDs() 

       recentVisitors.initWithVal(dict: result as! NSDictionary) 
       VisitorsArray.add(VisitorsDs.self) 
      } 
      print("array received: ", VisitorsArray) 
      self.tblView.reloadData() 
     } 
    } 

    self.tblView.reloadData() 

} 

// Model class 

클래스 VisitorsDs : NSObject의 {

var profile:String = "" 
var name:String = "" 

/* 
//MARK: Initialization 
init(profile:String,name:String,age:String,parentsName:String,mobile:String,purpose:String,date:String,time:String,clinic:String) { 

self.profile = profile 
self.name = name 
} 
*/ 

func initWithVal(dict: NSDictionary) { 
    // print(dict) 

    if let latestValue = dict["image_path"] as? String { 
     self.profile = latestValue 
    } 
    if let latestValue = dict["first_name"] as? String { 
     self.name = latestValue 
    } 
} 

}

Error: Could not cast value of type 'IPAN.VisitorsDs' (0x10d809f58) to 'IPAN.VisitorsDs' (0x10d806eb0). 

안내하십시오, 값이 jQuery과 빈 있지만, 값이 배열에 존재한다.

답변