# Problem with paginate, include and foreign keys

**URL:** <https://www.ruby-forum.com/t/problem-with-paginate-include-and-foreign-keys/74867>\
**Category:** Rails\
**Created:** [February 28, 2006, 7:22pm UTC](https://www.ruby-forum.com/t/problem-with-paginate-include-and-foreign-keys/74867 "2006-02-28T19:22:25Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![danielb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/c57346/32.png) [@danielb](https://www.ruby-forum.com/u/danielb)\
**Post date:** [February 28, 2006, 7:22pm UTC](https://www.ruby-forum.com/t/problem-with-paginate-include-and-foreign-keys/74867/1 "2006-02-28T19:22:25Z")

</div>

Hi all,

Solaris 10  
Ruby 1.8.4  
Rails 1.0.0  
Postgres 8.1  
postgres driver 0.7.1

I’m having a problem with getting paginate() to properly pick up an FK  
constraint properly.

I don’t seem to have this issue with ActiveRecord, however. Consider:

create table start\_dates (  
id bigserial,  
start\_date date unique,  
max\_slots int default 40,  
primary key (id)  
);

create table schedules (  
id bigserial,  
start\_date\_id int,  
…  
foreign key (start\_date\_id) references start\_dates (id),  
primary key (id)  
);

class StartDate \< ActiveRecord::Base  
has\_many :schedules  
end

class Schedule \< ActiveRecord::Base  
belongs\_to :start\_date  
end

The ActiveRecord portion works as expected:

condition = “date\_trunc(‘day’, start\_date) between date(?) and date(?) -  
1”

Schedule.find(  
:all,  
:include =\> ‘start\_date’,  
:conditions =\> [condition, first,last]  
)

However, in schedules\_controller.rb, this fails:

@schedule\_pages, @schedules = paginate(  
:schedules,  
:include =\> [‘start\_date’],  
:conditions =\> [condition, first, last]  
)

PGError: ERROR: column “start\_date” does not exist  
: SELECT COUNT(\*) FROM schedules WHERE (date\_trunc(‘day’, start\_date)  
between  
date(‘2006-2-01’) and date(‘2006-3-01 - 1’) - 1)

What am I doing wrong here?

Thanks,

Dan

---

<div class="post-metadata">

**Author:** ![danielb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/c57346/32.png) [@danielb](https://www.ruby-forum.com/u/danielb)\
**Post date:** [February 28, 2006, 7:46pm UTC](https://www.ruby-forum.com/t/problem-with-paginate-include-and-foreign-keys/74867/2 "2006-02-28T19:46:55Z")

</div>

Daniel B. wrote:

> between date(‘2006-2-01’) and date(‘2006-3-01 - 1’) - 1)  
> You may need this plugin:  
> [Peak Obsession](http://wiki.rubyonrails.com/rails/pages/Count+Limit+Associations+Plugin)

–  
We develop, watch us RoR, in numbers too big to ignore.

---

<div class="post-metadata">

**Author:** ![danielb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/c57346/32.png) [@danielb](https://www.ruby-forum.com/u/danielb)\
**Post date:** [February 28, 2006, 8:23pm UTC](https://www.ruby-forum.com/t/problem-with-paginate-include-and-foreign-keys/74867/3 "2006-02-28T20:23:49Z")

</div>

Mark Reginald J. wrote:

> > PGError: ERROR: column “start\_date” does not exist  
> > : SELECT COUNT(\*) FROM schedules WHERE (date\_trunc(‘day’, start\_date)  
> > between date(‘2006-2-01’) and date(‘2006-3-01 - 1’) - 1)
> 
> You may need this plugin:  
> [Peak Obsession](http://wiki.rubyonrails.com/rails/pages/Count+Limit+Associations+Plugin)

That looks like it will do the trick.

Thanks,

Dan

---

<div class="post-metadata">

**Author:** ![danielb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/c57346/32.png) [@danielb](https://www.ruby-forum.com/u/danielb)\
**Post date:** [February 28, 2006, 9:00pm UTC](https://www.ruby-forum.com/t/problem-with-paginate-include-and-foreign-keys/74867/4 "2006-02-28T21:00:23Z")

</div>

Mark Reginald J. wrote:

> > PGError: ERROR: column “start\_date” does not exist  
> > : SELECT COUNT(\*) FROM schedules WHERE (date\_trunc(‘day’, start\_date)  
> > between date(‘2006-2-01’) and date(‘2006-3-01 - 1’) - 1)
> 
> You may need this plugin:  
> [Peak Obsession](http://wiki.rubyonrails.com/rails/pages/Count+Limit+Associations+Plugin)

I’m a bit confused on how to install this plugin. I created a  
vendor/plugin/count\_limit\_association subdirectory, and put both the  
count\_limit\_association.rb file and init.rb file under that directory.

However, now Webrick dies immediately upon startup, with nary a log  
entry in site.

Was that not the correct way to set it up?

Regards,

Dan

---

<div class="post-metadata">

**Author:** ![danielb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/c57346/32.png) [@danielb](https://www.ruby-forum.com/u/danielb)\
**Post date:** [February 28, 2006, 10:03pm UTC](https://www.ruby-forum.com/t/problem-with-paginate-include-and-foreign-keys/74867/5 "2006-02-28T22:03:16Z")

</div>

Mark Reginald J. wrote:

> cd \<APP\_ROOT\>  
> script/plugin install  
> [http://jthopple.textdriven.com/svn/public/rails/plugins/count\_limit\_associations](http://jthopple.textdriven.com/svn/public/rails/plugins/count_limit_associations)

Excellent, thank you!

The plugin works great, btw.

Thanks,

Dan

---

<div class="post-metadata">

**Author:** ![danielb](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/c57346/32.png) [@danielb](https://www.ruby-forum.com/u/danielb)\
**Post date:** [February 28, 2006, 9:48pm UTC](https://www.ruby-forum.com/t/problem-with-paginate-include-and-foreign-keys/74867/6 "2006-02-28T21:48:29Z")

</div>

Daniel B. wrote:

> Mark Reginald J. wrote:
> 
> > You may need this plugin:  
> > [Peak Obsession](http://wiki.rubyonrails.com/rails/pages/Count+Limit+Associations+Plugin)
> 
> I’m a bit confused on how to install this plugin.

cd \<APP\_ROOT\>  
script/plugin install  
[http://jthopple.textdriven.com/svn/public/rails/plugins/count\_limit\_associations](http://jthopple.textdriven.com/svn/public/rails/plugins/count_limit_associations)

–  
We develop, watch us RoR, in numbers too big to ignore.
