Perdón por el titulo pero no sabia bien como expresar lo que me sucede.
Tengo instalado will_paginate y funciona bien, el problema es con mi
codigo, hago una secuencia con el codigo:
ELCONTROLLER
class ExpedienteController < ApplicationController
layout 'standard'
def list
persona = Persona.find_by_identificador(params[:i])
@tipo = Tipo.find_by_id(params[:tipo_id])
if params[:i] == nil #en la entrada inicial a la pagina
#@expedientes_filtered = Expediente.find(:all, :conditions =>
{:tipo_id => params[:tipo_id]})
@expedientes_filtered = Expediente.paginate :page =>
params[:page], :per_page => 2, :conditions => {:tipo_id =>
params[:tipo_id]}
else
if persona == nil #cuando no existe o no se pone nada
#@expedientes_filtered = Expediente.find(:all, :conditions => {
:id => -1})
@expedientes_filtered = Expediente.paginate :page =>
params[:page], :per_page => 2,:conditions => { :id => -1}
else
#@expedientes_filtered = Expediente.find(:all, :conditions =>
["persona_id = ? and tipo_id = ?" , persona.id, params[:tipo_id]])
@expedientes_filtered = Expediente.paginate :page =>
params[:page], :per_page => 3, :conditions => ["persona_id = ? and
tipo_id = ?" , persona.id, params[:tipo_id]]
end
end
if request.xhr?
render :partial => "expediente", :layout => false
end
end
....
LIST VIEW
<h3>Buscar Expediente de: <%= @tipo.tipo %> </h3>
<% form_tag do %> <!--search = method in controller -->
<label for="item_name">DNI Solicitante : </label>
<%= text_field_tag(:i, params[:i], :size => 10 ) %>
<%= submit_tag "Buscar" %>
<%= hidden_field_tag(:tipo_id, params[:tipo_id], :value =>
@tipo.id) %>
<% end %>
<div id="table"> <%= render :partial => "expediente" %> </div>
<% form_tag :action => 'new' do %> <!--search = method in controller
-->
<%= submit_tag "Nuevo expediente" %>
<%= hidden_field_tag(:tipo_id, params[:tipo_id], :value =>
@tipo.id) %>
<% end %>
..........
PARTIAL VIEW
<table id="rounded-corner">
<thead>
<tr>
<th scope="col" class="rounded-q0"> </th>
<th scope="col" class="rounded-q1"> </th>
<th scope="col" class="rounded-q1"> Nº Expediente </th>
<th scope="col" class="rounded-q1"> Estado </th>
<th scope="col" class="rounded-q1"> Descripcion </th>
<th scope="col" class="rounded-q1"> Fecha Solicitud </th>
<th scope="col" class="rounded-q1"> Fecha Concesión </th>
<th scope="col" class="rounded-q2"> Solicitante </th>
</tr>
</thead>
<tfoot>
<tr>
<th colspan ="8"><%= will_paginate @expedientes_filtered %></th>
</tr>
</tfoot>
<tbody>
<% @expedientes_filtered.each do |exp| %>
<tr class="<%= cycle("even","odd") %>">
<td><small> <%= link_to 'editar', {:action => "show", :id =>
exp.id, :tipo_id => @tipo.id} %></small></td>
<td><small> <%= link_to 'borrar', {:action => "delete", :id =>
exp.id},
:confirm => "¿Esta seguro que quiere borrar este
expediente?" %></small></td>
<td><%= link_to exp.numero_exp, {:controller => 'historial',
:action => "list", :expediente_id => exp.id, :tipo_id => @tipo.id}
%></td>
<td><%= exp.estado.estado %></td>
<td><%= exp.descripcion %></td>
<td><%= exp.fecha_solicitud %></td>
<td><%= exp.fecha_concesion %></td>
<td><%= exp.persona.nombre %></td>
</tr>
<% end %>
</tbody>
</table>
......
Os comento, cuando no filtro por ninguna persona, el will_paginate
funciona bien, y me voy moviendo entre las paginas sin problemas, PERO
si filtro por una persona, la carga inicial funciona y me sale la
primera pagina y el numero de las siguientes, pero al pinchar en alguna
de ellas me dice este error:
NoMethodError in Expediente#list
Showing app/views/expediente/list.html.erb where line #1 raised:
You have a nil object when you didn't expect it!
The error occurred while evaluating nil.tipo
Extracted source (around line #1):
1: <h3>Buscar Expediente de: <%= @tipo.tipo %> </h3>
2:
3: <% form_tag do %> <!--search = method in controller -->
4: <label for="item_name">DNI Solicitante : </label>
RAILS_ROOT: C:/DATOS/JAVIER/PROFESIONAL/ruby/GdA_RoR
Application Trace | Framework Trace | Full Trace
C:/DATOS/JAVIER/PROFESIONAL/ruby/GdA_RoR/app/views/expediente/list.html.erb:1:in
`_run_erb_app47views47expediente47list46html46erb'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/renderable.rb:34:in
`send'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/renderable.rb:34:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/base.rb:301:in
`with_template'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/renderable.rb:30:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/template.rb:199:in
`render_template'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/base.rb:260:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/base.rb:343:in
`_render_with_layout'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/base.rb:257:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:1246:in
`render_for_file'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:941:in
`render_without_benchmark'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/benchmarking.rb:51:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:17:in
`ms'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:10:in
`realtime'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:17:in
`ms'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/benchmarking.rb:51:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:1322:in
`default_render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:1328:in
`perform_action_without_filters'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/filters.rb:617:in
`call_filters'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/filters.rb:610:in
`perform_action_without_benchmark'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/benchmarking.rb:68:in
`perform_action_without_rescue'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:17:in
`ms'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:10:in
`realtime'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:17:in
`ms'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/benchmarking.rb:68:in
`perform_action_without_rescue'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/rescue.rb:160:in
`perform_action_without_flash'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/flash.rb:146:in
`perform_action'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:527:in
`send'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:527:in
`process_without_filters'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/filters.rb:606:in
`process'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:391:in
`process'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:386:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/routing/route_set.rb:434:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/dispatcher.rb:88:in
`dispatch'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/dispatcher.rb:111:in
`_call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/dispatcher.rb:82:in
`initialize'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/query_cache.rb:29:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/query_cache.rb:29:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/query_cache.rb:34:in
`cache'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/query_cache.rb:9:in
`cache'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/query_cache.rb:28:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:361:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/head.rb:9:in `call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/methodoverride.rb:24:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/params_parser.rb:15:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/session/cookie_store.rb:93:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/reloader.rb:29:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/failsafe.rb:26:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/lock.rb:11:in `call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/lock.rb:11:in
`synchronize'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/lock.rb:11:in `call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/dispatcher.rb:106:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rails-2.3.3/lib/rails/rack/static.rb:31:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/urlmap.rb:46:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/urlmap.rb:40:in
`each'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/urlmap.rb:40:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rails-2.3.3/lib/rails/rack/log_tailer.rb:17:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/content_length.rb:13:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/chunked.rb:15:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/handler/mongrel.rb:61:in
`process'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:159:in
`process_client'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:158:in
`each'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:158:in
`process_client'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:285:in
`run'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:285:in
`initialize'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:285:in
`new'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:285:in
`run'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:268:in
`initialize'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:268:in
`new'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:268:in
`run'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/handler/mongrel.rb:34:in
`run'
C:/ruby/lib/ruby/gems/1.8/gems/rails-2.3.3/lib/commands/server.rb:111
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`gem_original_require'
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`require'
script/server:3
C:/DATOS/JAVIER/PROFESIONAL/ruby/GdA_RoR/app/views/expediente/list.html.erb:1:in
`_run_erb_app47views47expediente47list46html46erb'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/renderable.rb:34:in
`send'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/renderable.rb:34:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/base.rb:301:in
`with_template'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/renderable.rb:30:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/template.rb:199:in
`render_template'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/base.rb:260:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/base.rb:343:in
`_render_with_layout'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_view/base.rb:257:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:1246:in
`render_for_file'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:941:in
`render_without_benchmark'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/benchmarking.rb:51:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:17:in
`ms'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:10:in
`realtime'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:17:in
`ms'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/benchmarking.rb:51:in
`render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:1322:in
`default_render'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:1328:in
`perform_action_without_filters'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/filters.rb:617:in
`call_filters'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/filters.rb:610:in
`perform_action_without_benchmark'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/benchmarking.rb:68:in
`perform_action_without_rescue'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:17:in
`ms'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:10:in
`realtime'
C:/ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.3/lib/active_support/core_ext/benchmark.rb:17:in
`ms'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/benchmarking.rb:68:in
`perform_action_without_rescue'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/rescue.rb:160:in
`perform_action_without_flash'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/flash.rb:146:in
`perform_action'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:527:in
`send'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:527:in
`process_without_filters'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/filters.rb:606:in
`process'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:391:in
`process'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/base.rb:386:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/routing/route_set.rb:434:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/dispatcher.rb:88:in
`dispatch'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/dispatcher.rb:111:in
`_call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/dispatcher.rb:82:in
`initialize'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/query_cache.rb:29:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/query_cache.rb:29:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/query_cache.rb:34:in
`cache'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/query_cache.rb:9:in
`cache'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/query_cache.rb:28:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/activerecord-2.3.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:361:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/head.rb:9:in `call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/methodoverride.rb:24:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/params_parser.rb:15:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/session/cookie_store.rb:93:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/reloader.rb:29:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/failsafe.rb:26:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/lock.rb:11:in `call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/lock.rb:11:in
`synchronize'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/lock.rb:11:in `call'
C:/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.3/lib/action_controller/dispatcher.rb:106:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rails-2.3.3/lib/rails/rack/static.rb:31:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/urlmap.rb:46:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/urlmap.rb:40:in
`each'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/urlmap.rb:40:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rails-2.3.3/lib/rails/rack/log_tailer.rb:17:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/content_length.rb:13:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/chunked.rb:15:in
`call'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/handler/mongrel.rb:61:in
`process'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:159:in
`process_client'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:158:in
`each'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:158:in
`process_client'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:285:in
`run'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:285:in
`initialize'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:285:in
`new'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:285:in
`run'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:268:in
`initialize'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:268:in
`new'
C:/ruby/lib/ruby/gems/1.8/gems/mongrel-1.1.5-x86-mswin32-60/lib/mongrel.rb:268:in
`run'
C:/ruby/lib/ruby/gems/1.8/gems/rack-1.0.0/lib/rack/handler/mongrel.rb:34:in
`run'
C:/ruby/lib/ruby/gems/1.8/gems/rails-2.3.3/lib/commands/server.rb:111
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`gem_original_require'
C:/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`require'
script/server:3
Request
Parameters:
{"page"=>"2"}
Show session dump
---
Response
Headers:
{"Content-Type"=>"text/html",
"Cache-Control"=>"no-cache"}
En definitiva que no encuentra la variable @tipo
Alguna sugerencia por favor!!
on 2010-02-16 10:36
on 2010-02-16 20:28
Javier Marquez wrote: > Perdón por el titulo pero no sabia bien como expresar lo que me sucede. > Tengo instalado will_paginate y funciona bien, el problema es con mi > codigo, hago una secuencia con el codigo: > > … > > Request > > Parameters: > > {"page"=>"2"} > > Show session dump > > --- > > Response > > Headers: > > {"Content-Type"=>"text/html", > "Cache-Control"=>"no-cache"} > > En definitiva que no encuentra la variable @tipo > > Alguna sugerencia por favor!! Una pregunta… Supongo que en el controlador tienes un método "index" que es al que se llaman cuando "no hay filtros" y todo funciona bien. Luego, cuando incorporas el filtro y llamas a "list", es cuando el will_paginate no funciona… es correcto? Y una observación. El error que obtienes es porque cuando se llama al método "list" del controlador, no se le envÃa el parámetro "tipo_id" con lo que "@tipo_id" se evalúa a NIL y te falla en la vista cuando se intenta evaluar "@tipo.tipo". PodrÃas intentar en controlador algo como: @tipo = (params[:tipo_id].nil? ? <valor_por_defecto> : Tipo.find_by_id(params[:tipo_id]) ) Un Saludo…
on 2010-02-17 00:34
Hola Juan, el controller tiene distintas condiciones según los parametros que le llegan, asà cuando hay filtro pasa por el ultimo else ... else @expedientes_filtered = Expediente.paginate :page => params[:page], :per_page => 3, :conditions => ["persona_id = ? and tipo_id = ?" , persona.id, params[:tipo_id]] Lo que intento en la vista list una cabecera donde se puede filtrar y es el partial la que refresco con los datos, pero se ve que el parametro donde llevo la variable @tipo no se pasa correctamente. Adjunto unas capturas donde se ve la aplicación funcionando. Gracias por tu tiempo.
on 2010-02-17 23:19
Javier Marquez wrote: > Hola Juan, el controller tiene distintas condiciones según los > parametros que le llegan, asà cuando hay filtro pasa por el ultimo else > ... > else > @expedientes_filtered = Expediente.paginate :page => > params[:page], :per_page => 3, :conditions => ["persona_id = ? and > tipo_id = ?" , persona.id, params[:tipo_id]] > > > Lo que intento en la vista list una cabecera donde se puede filtrar y es > el partial la que refresco con los datos, pero se ve que el parametro > donde llevo la variable @tipo no se pasa correctamente. > > Adjunto unas capturas donde se ve la aplicación funcionando. > Gracias por tu tiempo. No hay de que Javier. Por lo que he visto en los pantallazos, parece que después del primer filtrado, cuando pones el DNI, pierdes el parámetro tipo_id en la URL y esto es lo que luego provoca el fallo… puede ser??? Un Saludo...
on 2010-02-18 00:21
Es totalmente correcto. La primera vez funciona porque paso el parametro tipo_id, pero despues form_tag llama otra vez a list del controller, y ese a su vez sola a la partial. En fin, cuando no tengo will_paginate funciona porque ya tengo los expedientes que quiero mostrar, pero parece que al moverme de pagina, will_paginate refresca toda la view y ya no existe el parametro tipo_id. Podria ser una solución pasar en el form_tag como parametro de la acción list el valor "tipo_id", eso como se puede hacer?? Thanks a lot.
on 2010-02-19 15:42
Hola prueba haciendo esto:
<%= will_paginate @expedientes_filtered, params => {:tipo_id => 'tu
variable'} %>
on 2010-02-19 15:46
Carlos Timoteo wrote:
Hola prueba haciendo esto:
<%= will_paginate @expedientes_filtered, params => {:tipo_id =>
@tipo.id} %>
Disculpa no se como editar el post pero asi deberia ser segun como lo
tienes en tu controller y view...
espero que te funcione...
Saludos
on 2010-02-19 17:30
Gracias Carlos, lo he probado "con gran emoción" pero sigue apareciendo el mismo error. De todas formas, voy aprendiendo con vuestras aportaciones. Creo que al final quitaré la vista partial y haré siempre llamadas como la incial cuando entro por primera vez que parece que funciona. Muchas gracias de nuevo.
on 2010-02-20 05:48
Javier Marquez wrote: > Gracias Carlos, lo he probado "con gran emoción" pero sigue apareciendo > el mismo error. De todas formas, voy aprendiendo con vuestras > aportaciones. > > Creo que al final quitaré la vista partial y haré siempre llamadas como > la incial cuando entro por primera vez que parece que funciona. > > Muchas gracias de nuevo. OK pero quieres paginar con javascript... que solo actualice el partial???
on 2010-02-20 12:09
Hola pues. No sé exactamente que me quieres decir. Mi idea es que el will_paginate solamente me paginara el "partial", asà creo que lo tenia antes de paginar, no tengo tadavia mucha idea de como realmente funciona. Gracias
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.
