В настоящее время у меня есть следующая проблема в приложении Rails (Rails 2.3.5):
- Я хочу отсортировать книги, хранящиеся в приложении, по имени автора, а затем по названию книги.
Книга и Автор - конкретные модели, соответствующие таблицы - Ресурсы и Люди.Соответствующей частью схемы является (я немного урезал модель):
create_table "people", :force => true do |t|
t.string "sur_name"
t.string "pre_name"
...
t.string "type"
end
create_table "people_ressources", :id => false, :force => true do |t|
t.integer "ressource_id"
t.integer "person_id"
end
create_table "ressources", :force => true do |t|
t.string "type"
t.string "title"
end
Чтобы показать список книг, я использовал следующий пагинатор:
@books = Book.paginate(
:order => 'title', :per_page => 15, :page => params[:page])
Мой вопрос теперь таков: как должен быть устроен нумератор страниц, чтобы книги упорядочивались не по названию, а сначала по автору (== персона) sur_name?И если это не так легко сделать, какая конструкция позволит хранить книги и авторов как отдельные объекты, но позволит получить paginator с заданным порядком?