Для людей, которые сталкиваются с этой проблемой с один-ко-многим с использованием массива типа столбца,
Если присвоить массив типа столбца массива, то блок завершения не называется. Однако данные сохраняются. Однако нет возможности визуализировать соединение на панели управления parse.com.
У меня есть два стола, пользователь и образование. Пользователь может иметь несколько объектов образования. В следующем коде блок завершения никогда не вызывается.
import Parse
var education : [MyEducation] = [MyEducation]()
let edu1 : MyEducation = MyEducation()
edu1["schoolName"] = "Stanford"
edu1["fieldOfStudy"] = "Engineering"
edu1["startDate"] = NSDate()
education.append(edu1)
let edu2 : MyEducation = MyEducation()
edu2["schoolName"] = "UCLA"
edu2["fieldOfStudy"] = "Data Science"
edu2["startDate"] = NSDate()
education.append(edu2)
PFUser.currentUser()?["education"] = education
PFUser.currentUser()?.saveInBackgroundWithBlock{(success: Bool, error: NSError?) -> Void in
let a : Int = 1
}
Однако, если вы закодируете следующее, вызывается блок завершения.
import Parse
var education : [MyEducation] = [MyEducation]()
let edu1 : MyEducation = MyEducation()
edu1["schoolName"] = "Stanford"
edu1["fieldOfStudy"] = "Engineering"
edu1["startDate"] = NSDate()
edu1["user"] = PFUser.currentUser()
education.append(edu1)
let edu2 : MyEducation = MyEducation()
edu2["schoolName"] = "UCLA"
edu2["fieldOfStudy"] = "Data Science"
edu2["startDate"] = NSDate()
edu2.["user"] = PFUser.currentUser()
education.append(edu2)
PFUser.currentUser()?.saveInBackgroundWithBlock{(success: Bool, error: NSError?) -> Void in
let a : Int = 1
}
Итак, в конце концов, какой подход к выбору - это ваш звонок. Первая делает визуализацию более сложной (или невозможной?) На панели управления, но позже вы можете использовать includeKey («образование») для запросов PFUser.
В последнем подходе вы должны запросить класс Education для полного PFObject, но указатель на пользователя из класса Education отображается на панели управления, а также на этапе завершения.
Я думаю, что Parse не очень хорошо разрабатывал отношения, и это поведение не документировано.
Вы установили точку останова, чтобы увидеть, что происходит? – Paulw11
Несомненно, выполнение не останавливается на контрольной точке. –
Где вы установили точку останова? – Paulw11