Как сохранить завтра NSDate в Firebase? - PullRequest
0 голосов
/ 21 января 2019

Я работаю над приложением, в котором я храню изображения в Firebase с ограничением времени, я хочу сохранить 24-часовой лимит в Firebase, но у меня не работает. Вот моя функция, которая обрабатывает информацию, которая должна быть сохранена в базе данных Firebase.

     fileprivate func saveDataToUserProfile(imageUrl: String) {
    guard let uid = Auth.auth().currentUser?.uid else { return }
    guard let postImage = previewImageView.image else { return }
    let limitPostTime = Date(timeIntervalSinceNow: 60 * 60 * 24)


    let userRef = Database.database().reference().child("vibes").child(uid)
    let ref = userRef.childByAutoId()
    let values = ["vibeImageUrl": imageUrl, "imageWidth": postImage.size.width, "imageHeight": postImage.size.height, "creationDate": Date().timeIntervalSince1970, "votes": 0, "limitPostTime": limitPostTime] as [String : Any]
    ref.updateChildValues(values) { (err, ref) in
        if let err = err {
            print("Failed to save into DB: ", err)
            return
        }
            print("Successfully saved into the DB")
            self.removeFromSuperview()
    }
}

Я пытаюсь использовать разные способы хранения, но пока не нашел правильного.

let postLimitTime = Date().addingTimeInterval(60 * 60 * 24)

Я хочу просто сохранить дату завтрашнего дня, что-то вроде этого сейчас = 20.01.2009 завтра = 21.01.2009 конечно в формате NSDate.

1 Ответ

0 голосов
/ 21 января 2019

вы пытаетесь сохранить значение типа NSDate в firebase как этот ответ говорит, что вам нужно сохранить ваше значение как число

var interval = NSDate().timeIntervalSince1970

А когда вам нужна дата, простополучить это так

var date = NSDate(timeIntervalSince1970: interval)
...