Ruby on rails 使用will_paginate对列进行二次排序
在我的模型中,我有以下内容:Ruby on rails 使用will_paginate对列进行二次排序,ruby-on-rails,will-paginate,Ruby On Rails,Will Paginate,在我的模型中,我有以下内容: Rails 6 will_paginate name author_id 这将给我一个对象数组,每个对象都具有以下属性: def index @books = Book.all.paginate page: params[:page], per_page: params[:per_page] end 因此,在我看来,我可以做到以下几点: Rails 6 will_paginate name author_id 但我真正想做的是显示作者姓名,我可以从bo
Rails 6
will_paginate
name
author_id
这将给我一个对象数组,每个对象都具有以下属性:
def index
@books = Book.all.paginate page: params[:page], per_page: params[:per_page]
end
因此,在我看来,我可以做到以下几点:
Rails 6
will_paginate
name
author_id
但我真正想做的是显示作者姓名,我可以从book对象中获得,如下所示:
th= sortable "name", "Name"
th= sortable "author_id", "Author ID"
因为这本书属于作者
如何在表中设置一列作者姓名,并使该列可排序?您尝试过类似的方法吗 控制器/书籍\u controller.rb
def索引
books_with_author=Book.all.map{| Book|
book.attributes.merge(作者名称:book.author.name)
}
@books=带有作者的图书。分页:参数[:page],每页:参数[:每页]
终止
此外,您还可以定义模型以供将来使用
models/book.rb
def author\u name
self.author.name
终止
我喜欢第二个建议