В моем приложении для капучино я читаю из бэкэнда RoR через JSON и помещаю результаты в список.Когда приложение впервые загружается, все в порядке, но когда я редактирую элемент (и записываю изменение в базу данных), при обновлении списка элементов возникает ошибка.
Ошибка: CPRangeException: -[_CPJavaScriptArray objectAtIndex:]: index (-1) beyond bounds (3)
.
Я получаю эту ошибку, даже если я редактирую элемент без каких-либо реальных изменений.Строка JSON, полученная приложением, в этом случае остается неизменной, элементы не добавляются и не удаляются, и поэтому массив не должен записываться за пределы.
Вот мой код:
- (void)connection:(CPRURLConnection)connection didReceiveData:(CPString)data
{
if(connection === listConnection)
{
var results = JSON.parse(data) ;
var posts = [Post initFromJSONObjects:results];
[postListView setContent:posts] ;
// My error occurs at the above line
[postListView setSelectionIndexes:[[CPIndexSet alloc] initWithIndex:0]] ;
}
}
Я не уверен, является ли это ошибкой в моем коде, или это какая-то несовместимость со структурой капучино.Кто-нибудь знает, что я могу сделать, чтобы это исправить?
Остальной код можно найти здесь