# Pagination

**URL:** <https://www.ruby-forum.com/t/pagination/225995>\
**Category:** Rails\
**Created:** [February 26, 2008, 11:45am UTC](https://www.ruby-forum.com/t/pagination/225995 "2008-02-26T11:45:11Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![sijo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/da6949/32.png) [@sijo](https://www.ruby-forum.com/u/sijo)\
**Post date:** [February 26, 2008, 11:45am UTC](https://www.ruby-forum.com/t/pagination/225995/1 "2008-02-26T11:45:11Z")

</div>

Hi  
IN MY CONTROLLER

def search\_sd\_ticket  
@search\_sd\_ui\_hash=params[:sd\_ticket]  
puts @search\_sd\_ui\_hash  
@sd\_ticket\_number=@search\_sd\_ui\_hash[:number]  
puts @search\_sd\_ui\_hash[:number]  
@sd\_ticket\_status\_id=@search\_sd\_ui\_hash[:service\_desk\_status\_id]  
@sd\_ticket\_priority\_id=@search\_sd\_ui\_hash[:service\_desk\_priority\_id]  
@sd\_ticket\_primary\_assignee=@search\_sd\_ui\_hash[:primary\_assignee]  
@sd\_ticket\_start\_date=@search\_sd\_ui\_hash[:start\_date]  
@sd\_ticket\_end\_date=@search\_sd\_ui\_hash[:end\_date]  
@date\_condition=nil

```
#if @sd_ticket_start_date=="" or @sd_ticket_end_date==""
 # flash[:notice] = "Start date and end date are needed "
  # render :action => 'search_sd_ticket_ui'
#end

      #@search_sd_ticket_result=ServiceDeskTicket.find(:all,

```

:conditions =\> “created\_on \> @sd\_ticket\_start\_date AND created\_on \<  
@sd\_ticket\_end\_date”)

```
      # step 1: set the variables you'll need
        page = (params[:page] ||= 1).to_i
        items_per_page = 20
        offset = (page - 1) * items_per_page
      @search_sd_ticket_result = ServiceDeskTicket.find_where(:all )

```

do |sd|  
sd.number.downcase =~  
“%”+@sd\_ticket\_number.downcase+"%"  
sd.service\_desk\_status\_id==  
@sd\_ticket\_status\_id  
sd.service\_desk\_priority\_id==  
@sd\_ticket\_priority\_id  
sd.primary\_assignee==  
@sd\_ticket\_primary\_assignee  
sd.created\_on \<=\>  
(@sd\_ticket\_start\_date…@sd\_ticket\_end\_date) if  
!@sd\_ticket\_start\_date.empty? and !@sd\_ticket\_end\_date.empty?  
end

@item\_pages = Paginator.new(self, @search\_sd\_ticket\_result.length,  
items\_per\_page, page)  
@search\_sd\_ticket\_result = @search\_sd\_ticket\_result[offset…(offset +  
items\_per\_page - 1)]

end

AND MY VIEW

\<%= link\_to(‘previous’,  
:page =\> @item\_pages.current.previous) if @item\_pages.current.previous  
%\>

\<% puts @search\_sd\_ui\_hash[:number]%\>  
\<%= link\_to(‘next’,  
:page =\> @item\_pages.current.next,:sd\_ticket=\>@search\_sd\_ui\_hash) if  
@item\_pages.current.next %\>

FIRST PAGE OK .BUT WHEN I CLICK NEXT ERROR

You have a nil object when you didn’t expect it!  
The error occurred while evaluating nil.downcase

WHAT MAY BE THE REASON  
Sijo
