I have a pretty basic model called Review (basically just an ID serial and some text columns) and I'm making a simple pagination system for it. The following code:
Review.all(:limit => per_page, :offset => offset, :order => [ :id.asc ])
Returns the correct objects if the offset is 0, but is problematic if offset is anything else. With an offset > 0, the code:
reviews = Review.all(:offset => offset, :limit => per_page);
p reviews
p reviews.count
returns
[#<Review @id=11 @created_at=<not loaded> @rating=<not loaded> @title=<not loaded> @text= <not loaded> @name=<not loaded> @from=<not loaded> @stay_date=<not loaded> @helpful=0 @not_helpful=0 @response=<not loaded>>, #<Review @id=12 @created_at=<not loaded> @rating=<not loaded> @title=<not loaded> @text=<not loaded> @name=<not loaded> @from=<not loaded> @stay_date=<not loaded> @helpful=0 @not_helpful=0 @response=<not loaded>>, #<Review @id=13 @created_at=<not loaded> @rating=<not loaded> @title=<not loaded> @text=<not loaded> @name=<not loaded> @from=<not loaded> @stay_date=<not loaded> @helpful=0 @not_helpful=0 @response=<not loaded>>, #<Review @id=14 @created_at=<not loaded> @rating=<not loaded> @title=<not loaded> @text=<not loaded> @name=<not loaded> @from=<not loaded> @stay_date=<not loaded> @helpful=0 @not_helpful=0 @response=<not loaded>>, #<Review @id=15 @created_at=<not loaded> @rating=<not loaded> @title=<not loaded> @text=<not loaded> @name=<not loaded> @from=<not loaded> @stay_date=<not loaded> @helpful=0 @not_helpful=0 @response=<not loaded>>]
0
How is this? It's finding the objects, but can't count them?