Submit formulario

Hola, estoy teniendo un problema al hacer un simple submit de un
formulario, simplemente no me deja, parto desde esta url:

http://miapp.es/admin/documentos/list/3?doc=94

Cuando doy al botón submit me aparece el error 500:
Application error

Change this error message for exceptions thrown outside of an action
(like in Dispatcher setups or broken Ruby code) in public/500.html

y mirando el log tengo:

undefined method update' for "94":String ../config/../vendor/rails/actionpack/lib/action_controller/cgi_ext/cgi_methods.rb:214:inbuild_deep_hash’
…/config/…/vendor/rails/actionpack/lib/action_controller/cgi_ext/cgi_methods.rb:214:in
build_deep_hash' ../config/../vendor/rails/actionpack/lib/action_controller/cgi_ext/cgi_methods.rb:54:inparse_request_parameters’
…/config/…/vendor/rails/actionpack/lib/action_controller/cgi_ext/cgi_methods.rb:47:in
each' ../config/../vendor/rails/actionpack/lib/action_controller/cgi_ext/cgi_methods.rb:47:inparse_request_parameters’
…/config/…/vendor/rails/actionpack/lib/action_controller/cgi_process.rb:71:in
request_parameters' ../config/../vendor/rails/actionpack/lib/action_controller/request.rb:13:inparameters’
…/config/…/vendor/rails/actionpack/lib/action_controller/session_management.rb:122:in
set_session_options_without_components' ../config/../vendor/rails/actionpack/lib/action_controller/components.rb:178:inset_session_options’
…/config/…/vendor/rails/actionpack/lib/action_controller/session_management.rb:116:in
process' ../config/../vendor/rails/railties/lib/dispatcher.rb:38:indispatch’
…/config/…/vendor/rails/railties/lib/fcgi_handler.rb:150:in
process_request' ../config/../vendor/rails/railties/lib/fcgi_handler.rb:54:inprocess!’
/usr/local/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:612:in
each_cgi' /usr/local/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:609:ineach’
/usr/local/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:609:in
each_cgi' ../config/../vendor/rails/railties/lib/fcgi_handler.rb:53:inprocess!’
…/config/…/vendor/rails/railties/lib/fcgi_handler.rb:23:in `process!’
dispatch.fcgi:24

Está haciendo algo con el parámetro pero no se qué, cosa que no me
explico, sólo debe hacer el submit, así de fácil pero no lo hace. Alguna
sugerencia? Gracias

Hola Miguel, creo que si podrias mostrar el codigo de la accion que
procesa
ese submit seria util para poder darte una ayuda.

Saludos.

Me suena a que haces

params[:id].update y no Modelo.find(params[:id]).update

pero ni idea :stuck_out_tongue: como dice el error el string “94” no tiene el metodo
update

pero como dice Ruben que nos digas mas sobre el asunto y pongas algo del
codigo que tienes ahi podriamos ayudarte

2008/8/25 Miguel Angel Calleja L. [email protected]

Mi formulario, donde tengo 3 selects dependientes que los relleno via
observe_field tal como asi:

Manuales:

<%= observe_field 'gama', :url => {:controller => 'documentos', :action => 'set_modelos_by_familia',:cat_id=>@categoria.id}, :with => "'gama_id=' + escape(value) "

%>

… (el resto de datos son check_box y algún hidden)

Y mi método acciones:

def acciones
logger.info “********* ESTOY EN ACCIONES *******”
total=params[:total]
for i in 1…total.to_i

item=params[“item_#{i}”]
if item

documento=Documento.find(item)

documento.destroy

logger.info “El documento '”+documento.nombre+"’ ha sido eliminado."
end
end
redirect_to
:action=>‘list’,:id=>params[:categoria]

end

Por lógica al hacer submit debe ir al método acciones, pero no va, sólo
me pasa cuando hago uso de los observe_field pero sólo se recargarn los
select no toca nada del formulario, asi que no me explico todavía.
Ayudita please, gracias

Omar J.
escribió:>

Application error
`build_deep_hash'
../config/../vendor/rails/actionpack/lib/action_controller/session_management.rb:122:in
/usr/local/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:612:in
Está haciendo algo con el parámetro pero no se qué, cosa que no me

Ror-es mailing list
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es
Aporto un dato que creo que puede fallar por éso, puede ser el Ajax de
unos select, tengo 3 select dependientes que se rellenan por Ajax via
observe_field, una vez han sido rellenados los 3 debería hacer submit
del formulario, es ahí cuando no me deja hacer ningún tipo de submit, me
debería llevar al action de mi formulario, es que no tiene nada más ni
objeto.update, simplemente tengo los 3 select rellenados y el formulario
que no se ha tocado con mi botón submit. Tiene algo que ver con el ajax
creo porque en un formulario normal funciona correctamente, sólo ocurre
cuando hago uso del observe_field, que una vez que acabo no me deja
hacer submit.

A mí también me salía ese error tal cual. Pero yo tenìa un select, 3
check boxes y 2 text fields. Así funcionaba, pero un día tuve que
agregar un par de hidden fields. La aplicación voló en mil pedazos
lanzándome el dichoso pantallazo de Application Error. Quité los hidden
fields y volvió a funcionar normalmente, los sustituí por parámetros en
la misma etiqueta de declaración del formulario (start_form_tag) Sé que
ésta información no es mucha, pero quizá aporte ideas a quienes tengan
este error tan desagradable.