Thx for the answer
but my problem is when I have a query, I am unable to go to the second page
I get @posts as nil object, it is like paginating with ajax do not submit 
the query when changing the page

rgds,

On Monday, February 9, 2015 at 5:25:13 PM UTC+1, tamouse wrote:
>
> ... except with the right model name ...
>
> On Mon, Feb 9, 2015 at 10:24 AM, tamouse pontiki <tamous...@gmail.com 
> <javascript:>> wrote:
>
>> Maybe what you want is something more like:
>>
>> if params[:q]
>>   @posts = Posts.find_with_q.paginate...
>> else
>>   @posts = Posts.all.paginate...
>> end
>>
>> respond_to do |format|
>>   ...
>> end
>>
>>
>>
>>
>> So your rendering isn't gated by whether there is a 'q' parameter; it 
>> only determines what gets set into @posts.
>>
>> On Mon, Feb 9, 2015 at 5:13 AM, Melb01 <melag...@gmail.com <javascript:>> 
>> wrote:
>>
>>> Hi,
>>> I have an index page with searchbox and with pagination, it worked well 
>>> when I tried to make pagination with javascript, itworked for the first 
>>> page but not the second
>>> I think the problem is to pass the value of the search box to the script 
>>> of pagination
>>>
>>> here is my code:
>>>
>>> ------------------------------------------------------------------------------------
>>> index.hmtl.erb
>>>
>>> <%= text_field_tag 'q', params['q']  %>
>>> <div id="posts" >   
>>>         <%= render  'layouts/posts' %>
>>> </div>
>>> <% if !@posts.nil? %>
>>>       <%= link_to 'Load More Posts', post_path(:page => 
>>> @posts.next_page), :class => 'load-more-posts', :remote => true if 
>>> @posts.next_page %>
>>>  <% end %>
>>> -----------------------------------------------------------------
>>> _posts.html.erb
>>> <% if !@posts.nil? && @posts.size > 0  %>
>>>                 <% @posts.each_with_index do |post| %>
>>>                     <b><%= post.title %></b>
>>>                     <p><%= post.body %></p>
>>>                 <% end %>
>>>  <% end %>
>>> -----------------------------------------------------
>>>
>>>
>>> index.js.erb
>>> $("#posts").append("<%= escape_javascript(render partial: 
>>> "layouts/posts", :locals => { :posts => @posts }) %>");
>>>
>>> ---------------------------------------------------------------------------
>>> post_controller.rb
>>>
>>> *if !params[:q].nil?   *
>>>       
>>>       @posts = Post.find_with_q.paginate(:per_page => 10, :page =>  
>>> params[:page])
>>>       
>>>       respond_to do |format|
>>>         format.html # index.html.erb
>>>         format.json { render json: @posts }
>>>         format.js
>>>       end
>>> end
>>>
>>>
>>> --------------------------------------------------------------------------------
>>>
>>>
>>> The problem with this code is thatI can't go to the next page beause the 
>>> params q is null with ajax call
>>> when I delete the condition it works well
>>> thank you fo the help
>>>
>>> rgds,
>>>
>>>
>>>
>>>  -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Ruby on Rails: Talk" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to rubyonrails-ta...@googlegroups.com <javascript:>.
>>> To post to this group, send email to rubyonra...@googlegroups.com 
>>> <javascript:>.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/rubyonrails-talk/b53cd303-5228-4885-814b-44eaade8c4c6%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/rubyonrails-talk/b53cd303-5228-4885-814b-44eaade8c4c6%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/f336240a-0d3c-4cb0-a3ba-c9b06c496315%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to