2016-07-19 4 views
0

Я отформатировал текущую дату точно так же, как формат chatEventStartDate в моей учетной записи quickblox. Я попытался как при преобразовании моей даты в строку, так и в качестве даты.Как создать запрос, который возвращает события, возникающие после текущего времени и даты в Swift, используя QuickBlox

query.setObject (RightNow, forKey: "chatEventBidEndTime [GT]")

еще возвращает каждое событие, а не только те, начиная позже, чем текущее время и дату.

Спасибо!

ответ

1

Вы не должны использовать только String или Date, а скорее промежуток времени с 1 января 1970 года (начало Unix Epoch). Вы можете получить этот интервал от даты, как это:

let now = NSDate() 
let interval = now.timeIntervalSince1970 

и инициализация NSDate с Согласовать интервал таким образом:

let interval = 1000.0 
NSDate(timeIntervalSince1970: interval) 

Обратите внимание, что тип interval является Double, не Int. Я не уверен, поддерживает ли QuickBlox Double. Если это не так, вы можете просто преобразовать его в Int. Тем не менее, вы теряете второстепенную точность.

+0

Я хотел следить за этой проблемой; Я сотрудник Ксельвина, и сначала никто из нас не мог сделать головы или хвосты этого ответа. Как это работает, QuickBlox не может обрабатывать сравнения ни строк, ни дат, кроме равных или не равных. Таким образом, поле даты должно быть заменено целым числом или float, если требуется фильтрация на основе до или после даты. –

+0

@TimKokesh Ну тогда мой ответ должен работать. «NSDate» находится под обложкой только «Double», и я показал, как вы можете получить этот «Double». Он просто представляет количество секунд, прошедших с 1970 года. Поэтому, если вы хотите сравнить 2 даты, вы можете просто использовать этот номер, и он будет работать. –

 Смежные вопросы

  • Нет связанных вопросов^_^