Как использовать IBAction для записи данных в Firebase

У меня проблемы с выяснением того, как записать данные в мою базу данных Firebase через IBAction.

Моя проблема не в возможности записи в реальную базу данных, это тип данных, которые записываются.

Мне нужно записать данные, используя объект Google Maps Services Place. Вот мой код записи базы данных:

let newWaitTime = Int(waitTimeLabel.text!)

let waitTime = databaseRef.child("times").child(place.placeID).childByAutoId()

waitTime.setValue(newWaitTime)

Проблема с IBAction функции не могут принимать другие параметры, я не могу передать place переменная в функцию, чтобы позволить мне писать в мою базу данных.

Я не могу найти обходной путь, потому что это требует знания place.placeID представить время. Без этого невозможно определить, какие времена принадлежат каким местам. Какие-нибудь мысли?

1 ответ

Решение

В основной класс добавить следующее

var currentPlace: Place?

тогда всякий раз, когда вы взаимодействуете с определенным местом

self.currentPlace = placeImInteractingWith

в IBAction

if let placeToUse = currentPlace {
    let waitTime = databaseRef.child("times").child(placeToUse.placeID).childByAutoId()
    //etc
{
Другие вопросы по тегам