# Def list - paginate question

**URL:** <https://www.ruby-forum.com/t/def-list-paginate-question/94279>\
**Category:** Rails\
**Created:** [April 27, 2006, 6:53pm UTC](https://www.ruby-forum.com/t/def-list-paginate-question/94279 "2006-04-27T18:53:59Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![robtotheb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/db5fbb/32.png) [@robtotheb](https://www.ruby-forum.com/u/robtotheb)\
**Post date:** [April 27, 2006, 6:53pm UTC](https://www.ruby-forum.com/t/def-list-paginate-question/94279/1 "2006-04-27T18:53:59Z")

</div>

How do I adapt this code to only list articles made by the user logged  
into the session?

def list  
@article\_pages, @article = paginate :articles, :per\_page =\> 10  
end

---

<div class="post-metadata">

**Author:** ![robtotheb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/db5fbb/32.png) [@robtotheb](https://www.ruby-forum.com/u/robtotheb)\
**Post date:** [April 27, 2006, 7:17pm UTC](https://www.ruby-forum.com/t/def-list-paginate-question/94279/2 "2006-04-27T19:17:25Z")

</div>

@article\_pages, @article = paginate :articles, :per\_page =\> 10,  
:condition=\>[‘user\_id = ?’, current\_user.id]

Assuming there is a user\_id attribute for the model

On Thursday, April 27, 2006, at 6:53 PM, Rob B. wrote:

> Rails mailing list  
> removed\_email\_address@domain.invalid  
> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

\_Kevin

---

<div class="post-metadata">

**Author:** ![robtotheb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/db5fbb/32.png) [@robtotheb](https://www.ruby-forum.com/u/robtotheb)\
**Post date:** [April 27, 2006, 7:35pm UTC](https://www.ruby-forum.com/t/def-list-paginate-question/94279/3 "2006-04-27T19:35:49Z")

</div>

Kevin O. wrote:

> @article\_pages, @article = paginate :articles, :per\_page =\> 10,  
> :condition=\>[‘user\_id = ?’, current\_user.id]
> 
> Assuming there is a user\_id attribute for the model
> 
> On Thursday, April 27, 2006, at 6:53 PM, Rob B. wrote:
> 
> > Rails mailing list  
> > removed\_email\_address@domain.invalid  
> > [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)
> 
> \_Kevin

Didn’t work  
I dont have a user\_id attribute in the model

---

<div class="post-metadata">

**Author:** ![robtotheb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/db5fbb/32.png) [@robtotheb](https://www.ruby-forum.com/u/robtotheb)\
**Post date:** [April 27, 2006, 7:45pm UTC](https://www.ruby-forum.com/t/def-list-paginate-question/94279/4 "2006-04-27T19:45:37Z")

</div>

On Apr 27, 2006, at 9:53 AM, Rob B. wrote:

> How do I adapt this code to only list articles made by the user logged  
> into the session?
> 
> def list  
> @article\_pages, @article = paginate :articles, :per\_page =\> 10  
> end

The paginate method accepts the :conditions option.

[http://api.rubyonrails.org/classes/ActionController/](http://api.rubyonrails.org/classes/ActionController/)  
Pagination.html#M000104

Here’s an example with a named placeholder…

values = { :user\_id =\> session[:user\_id] }  
paginate :articles, :conditions =\> [ ‘user\_id = :user\_id’,  
values ], :per\_page =\> 10

Hope that helps!

Cheers,

Robby

Robby R.  
Founder & Executive Director

PLANET ARGON, LLC  
Ruby on Rails Development, Consulting & Hosting

> **[Planet Argon](https://www.planetargon.com)**
>
> Planet Argon is a Ruby on Rails development agency specializing in maintenance and support for existing Rails apps. Based in Portland, OR, Planet Argon has been a member of the Rails community since 2004.

[www.robbyonrails.com](http://www.robbyonrails.com)

+1 503 445 2457  
+1 877 55 ARGON [toll free]  
+1 815 642 4968 [fax]

---

<div class="post-metadata">

**Author:** ![robtotheb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/db5fbb/32.png) [@robtotheb](https://www.ruby-forum.com/u/robtotheb)\
**Post date:** [April 27, 2006, 8:08pm UTC](https://www.ruby-forum.com/t/def-list-paginate-question/94279/5 "2006-04-27T20:08:21Z")

</div>

You will just have to adjust the :conditions clause to match your  
particular user model and method for tracking the current\_user, but  
otherwise it will work.

Your article model really needs to have a ‘belongs\_to :user’ association  
so that you can tell which articles belong to which user. If you don’t  
have that, or something equivalent, then there is no way to filter the  
articles properly.

on Thursday, April 27, 2006, at 7:35 PM, Rob B. wrote:

> > > [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)  
> > > Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).
> 
> * * *
> 
> Rails mailing list  
> removed\_email\_address@domain.invalid  
> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

\_Kevin

---

<div class="post-metadata">

**Author:** ![robtotheb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/db5fbb/32.png) [@robtotheb](https://www.ruby-forum.com/u/robtotheb)\
**Post date:** [April 28, 2006, 12:32pm UTC](https://www.ruby-forum.com/t/def-list-paginate-question/94279/6 "2006-04-28T12:32:15Z")

</div>

Kevin O. wrote:

> You will just have to adjust the :conditions clause to match your  
> particular user model and method for tracking the current\_user, but  
> otherwise it will work.
> 
> Your article model really needs to have a ‘belongs\_to :user’ association  
> so that you can tell which articles belong to which user. If you don’t  
> have that, or something equivalent, then there is no way to filter the  
> articles properly.
> 
> on Thursday, April 27, 2006, at 7:35 PM, Rob B. wrote:
> 
> > > > [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)  
> > > > Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).
> > 
> > * * *
> > 
> > Rails mailing list  
> > removed\_email\_address@domain.invalid  
> > [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)
> 
> \_Kevin

I do have a belongs to :user in my article model. Im just not sure how  
to adjust the :conditions clause in the controller. I used salted login  
gen to create the user model so not sure how its tracking the  
current\_user.
