2015-01-27 5 views
1

У меня есть база данных царства, и я пытаюсь вернуть даты. Мой запрос выглядит следующим образом:Запрос базы данных Realm для возврата дат

var jobsReturned = JobDates.objectsWhere("jobRestarted <= '\(testDate)' ") 

Проблема я получаю, когда я тест я получаю сообщение об ошибке, что говорится, «Нагрузочным приложение из-за неперехваченное исключением„недопустимое значение“, причины:«объект должен быть типа дата»

Я проверил мои две переменные, jobRestarted и testDate, чтобы убедиться, обе переменные даты я использую следующий код:.

println(" Test date is '\(_stdlib_getTypeName(testDate))' ") 

и

println(" jobRestarted is '\(_stdlib_getTypeName(jobRestarted))' ") 

Обе строки кода подтверждают, что обе переменные являются NSDates. Почему я получаю эту ошибку, когда обе переменные являются датами?

+0

Не могли бы вы более подробно рассказать о том, как использовать ваши объекты 'JobDates'? – segiddins

ответ

0
var jobsReturned = JobDates.objectsWhere("jobRestarted <= %@", testDate) 

Использование строки интерполяции передает строку "jobRestart <= '2015-01-27 21:48:03 +0000'" в objectsWhere, что приводит к NSPredicate сравнения jobRestart в строковое представление даты, но то, что вам нужно, это NSPredicate сравнения jobRestart к NSDate.

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