понедельник, 14 февраля 2011 г.

Если у вас undefined method `total_pages'.

Опишем ситуацию в общем виде:
Хотим сделать запрос к базе, получить данные и отсортировать их по определенному атрибуту.
Все идет хорошо и вдруг возникает ОШИБКА вида:
ActionView::TemplateError (undefined method `total_pages' for #<Array:0x5e82358>)

Это связано с испоьзованием:
escape_javascript will_paginate @transactions
и
@transactions = @transactions.sort_by { |transaction| transaction.name }

Проблема кроется в том, что Array не имеет метода total_pages.


Для того, что бы все было хорошо делаем так:
@transactions.sort! { |a,b| a.name <=> b.name }

И все работает. Спасибо ресурсу, а также.

Комментариев нет:

Отправить комментарий