Hi Guys,
In my application I created this method:
def self.find_paginated_posts_by_post_type(post_type,page=1,query=“”)
if query.empty? == false
query = “%#{query}%”
else
query = “%”
end
result = includes(:user).
where([‘post_type_id = ? AND title LIKE ?’, post_type.id, query]).
order(‘created_at DESC’).
page(page)
return result
end
this method is returning an ActiveRecord::Relation Object. So, when I use
will_paginate method my application throws an exception :
undefined method `total_pages' for #<ActiveRecord::Relation:0x007f94581e7848>
How can I fix it?
Thx
Bruno Meira
Hi Guys,
In my application I created this method:
def self.find_paginated_posts_by_post_type(post_type,page=1,query="")
if query.empty? == false
query = "%#{query}%"
else
query = "%"
end
result = includes(:user).
where(['post_type_id = ? AND title LIKE ?', post_type.id, query]).
order('created_at DESC').
page(page)
return result
end
this method is returning an ActiveRecord::Relation Object. So, when I use
will_paginate method my application throws an exception :
undefined method `total_pages' for #<ActiveRecord::Relation:0x007f94581e7848>
How can I fix it?
Thx
If you add to_a to the end of the request, before you pass it to paginate, then all of the results will be queried and returned as an array -- old-school. But if you use Kaminari or another pagination system that works natively with ActiveRecord::Relation objects, you won't have this issue (and you will get the benefits of Arel and all the wonder that is Rails 3+).
Walter
Hi Walter,
I will take a look in this solution and in this Kamirami
Thx for the answer ;D
First time using Kaminari… But it seems to be a good gem.
Thx for the tip ;D