[Ror-es] Crear registro con pasos
Sebastian Delmont
sd at notso.net
Thu Sep 28 15:57:34 GMT 2006
Es dificil explicar detalladamente la solucion, pues depende de
detalles especificos de tu problema. Sin embargo, aqui van algunos tips:
- Usa las validaciones de rails para todos los campos de tu modelo.
- Provee valores por defecto para todos los campos, y asegurate que
todos sean validos.
- Usa "valid?" en los pasos iniciales para validar los campos sin
guardar el objeto a la base de datos.
- Usa save en el ultimo paso para guardar los datos
La accion podria ser algo como:
LAST_STEP = 10
def registration_wizard
@model = Model.new(params[:model]) # crear un objeto nuevo cada
vez, junto con todos los atributos
@step = params[:step].to_i
@next_step = params[:next_step].to_i
if @model.valid?
if @next_step = LAST_STEP
if @model.save
flash[:notice] = "Listo, ya fue modificado el modelo"
redirect_to "/" and return
end
else
@next_step = @step + 1
end
end
@next_step ||= @step # Fallaron las validaciones, asi que debemos
volver a mostrar el paso actual
render :action => "registration_step_#{@step}"
end
Como en este caso estas re-generando el modelo en cada paso, tienes
que asegurarte que la vista correspondiente a cada paso incluya todos
los valores, bien sea como campos editables por el usuario, o como
campos escondidos.
On Sep 28, 2006, at 11:28 AM, Alberto Lagos wrote:
> Hola!, quisiera saber como creo un registro (create) con pasos, por
> ejemplo el primer paso es colocar datos personales, el segundo tus
> direcciones, tercero cc, etc...
>
> para que al final todo lo ingresado sea guardado en un solo registro.
>
> Gracias de ante mano!
>
> --
> Posted via http://www.ruby-forum.com/.
> _______________________________________________
> Ror-es mailing list
> Ror-es at lists.simplelogica.net
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>
More information about the Ror-es
mailing list