vylycyn
February 19, 2008, 5:38pm
1
Buenos dias.
aprendiendo ror. pero no dejo de chocarme con cosas.
ahora estoy utilizando el plugins de model_auto_completer de Xavier
Noria (muy bueno), para insertar registros, pero en el controller me
genera error al recuperar los datos del _form.rhtml y la instruccion que
tengo en el controller es:
def create
@preinscrito = Preinscrito.new(params[:preinscrito])
…
…
end
el error que genera al querer recuperar los datos es:
undefined method `stringify_keys!’ for [“1”]:Array
sera que se recupera los datos de otra manera?
mil gracias por la ayuda.
vylycyn
February 19, 2008, 5:55pm
2
On Feb 19, 2008, at 17:38 , William F. wrote:
el error que genera al querer recuperar los datos es:
undefined method `stringify_keys!’ for [“1”]:Array
Puedes enviar por favor las relaciones entre los modelos, la parte
relevante del form, y un volcado de params?
– fxn
vylycyn
February 19, 2008, 6:08pm
3
Mil Gracias Xavier por tu valiosa ayuda.
segun me haces caer en cuenta sera las relaciones que debo declararlas
por los campos?
class Participante < ActiveRecord::Base
has_many :preinscritos
…
class Preinscrito < ActiveRecord::Base
belongs_to :participante
…
_form.rhtml
<%= belongs_to_auto_completer :preinscrito, :participante, :nombres, {},
{ :size => 60 } %>
def create
@preinscrito = Preinscrito.new(params[:preinscrito])
@preinscrito.curso_id = @curso.id
@preinscrito.usuario_id = current_usuario.id
@preinscrito.regional_id = @curso.regional_id
@preinscrito.fch_preinscrito = Time.now
…
mil gracias nuevamente
vylycyn
February 19, 2008, 6:27pm
4
Xavier sera esto lo que me pides?
def auto_complete_belongs_to_for_preinscrito_participante_nombres
query = params[:participante][:nombres].downcase
query = “%#{query}%”
@participantes = Participante.find(:all, :conditions =>
[‘lower(nombres) LIKE ?’, query], :limit => 10)
render :partial => ‘preinscrito_participante_completions’
end
gracias
vylycyn
February 19, 2008, 6:14pm
5
On Feb 19, 2008, at 18:08 , William F. wrote:
belongs_to :participante
…
_form.rhtml
<%= belongs_to_auto_completer :preinscrito, :participante, :nombres,
{},
{ :size => 60 } %>
Hasta aqui parece ok, el volcado de params?
– fxn
vylycyn
February 19, 2008, 6:48pm
6
Xavier. o sera este el volcado de params?
Parameters: {“participante”=>{“nombres”=>“WILLIAM FERNANDO BETANCUR
GALEANO”}, “curso_id”=>“1”, “commit”=>“Guardar”, “preinscrito”=>[“1”]}
Disculpa no se a que te refieres con el volcado de params.
gracias
vylycyn
February 19, 2008, 7:31pm
7
On Feb 19, 2008, at 18:48 , William F. wrote:
Xavier. o sera este el volcado de params?
Parameters: {“participante”=>{“nombres”=>“WILLIAM FERNANDO BETANCUR
GALEANO”}, “curso_id”=>“1”, “commit”=>“Guardar”, “preinscrito”=>[“1”]}
Disculpa no se a que te refieres con el volcado de params.
Eso era.
Hay algo sospechoso, de acuerdo a tus mails parece que esperas
params[:preinscrito], pero el objeto del form segun se ve en params es
@participante .
Ves que params[:preinscrito] es un array con la cadena “1”? Asi mal
vamos a inicializar un modelo :-).
Parece que hay que cuadrar el form y la accion.
– fxn
vylycyn
February 19, 2008, 7:35pm
8
Si Xavier, mil gracias estoy revisando para ver que hice mal.
cuando lo solucione te cuento, me distes una gran luz para solucionar el
problema.
de nuevo gracias.
William B.
Medellin, Colombia
vylycyn
February 19, 2008, 10:54pm
9
Hola Xavier
asi fue como solucione el problema, me parece feo y parchudo, pero me
toca ponerla para poder avanzar, si yo se que esto no se debe hacer sin
comprender bien las cosas, ya me lo dijo Luis Felipe.
mas adelante voy a ver como lo arreglo.
id = params[:preinscrito][0] # obtengo el id del participante
desplegado por model_auto_completer
#@preinscrito = Preinscrito.new(params[:preinscrito])
@preinscrito = Preinscrito.new
@preinscrito.participante_id = id
@preinscrito.curso_id = @curso.id
@preinscrito.usuario_id = current_usuario.id
@preinscrito.regional_id = @curso.regional_id
@preinscrito.fch_preinscrito = Time.now
mil gracias Xavier por tu valiosa ayuda como siempre lo haces.
William B.
Medellin, Colombia
vylycyn
February 19, 2008, 8:29pm
10
No Xavier
no veo el problema que tengo.
sigo tu documentacion en: http://model-ac.rubyforge.org/ y no encuentro
el problema en mi app.
falta es probar con cosas sin mucho sentido.
gracias.
William B.
Medellin, Colombia