Я пытаюсь сохранить обратно в CloudKit после обновления списка ссылок и получения ошибки в первой строке этого блока кода.
Ошибка: неоднозначная ссылка на элемент 'save (_: завершениеHandler:) '
CKContainer.default().publicCloudDatabase.save(establishment) { [unowned self] record, error in
DispatchQueue.main.async {
if let error = error {
print("error handling to come")
} else {
print("success")
}
}
}
Это находится внутри функции, где пользователь собирается следовать заданному местоположению (Создание). Мы берем существующее заведение и его список подписчиков, проверяем, есть ли в нем выбранный пользователь, и добавляем их в список, если нет (или создаем его, если список подписчиков равен нулю).
Edit, in case helpful
//Both of these are passed in from the prior view controller
var establishment: Establishment?
var loggedInUserID: String?
@objc func addTapped() {
// in here, we want to take the logged in user's ID and append it to the list of people that want to follow this establishment
// which is a CK Record Reference
let userID = CKRecord.ID(recordName: loggedInUserID!)
var establishmentTemp: Establishment? = establishment
var followers: [CKRecord.Reference]? = establishmentTemp?.followers
let reference = CKRecord.Reference(recordID: userID, action: CKRecord_Reference_Action.none)
if followers != nil {
if !followers!.contains(reference) {
establishmentTemp?.followers?.append(reference)
}
} else {
followers = [reference]
establishmentTemp?.followers = followers
establishment = establishmentTemp
}
[это то место, где появляется блок CKContainer.default ..... save, вставленный вверху вопроса]
Я просмотрел различные посты на ' неоднозначная ссылка », но не смог выяснить источник моей проблемы. попытался явно установить типы для EstablisthmentTemp и последователей в случае, если это было проблемой (на основе решений других связанных постов), но безуспешно. Боюсь, что я вне идей как относительно неопытный новичок ie!
Помощь оценена.