Problema, utilizando array en select helper

Hola,

Estoy intentando utilizar un array con un select helper, siguiendo el
wiki [1] :

En el controlador :

@list_options = [“Cheques de todas las cuentas”,
“Cheques de la cuenta …”,
“Ver cancelados”]
p_options = params[:options]
my_struct = Struct.new(:option)
@options = new my_struct(p_options[:option])

En la vista :

<%= select :options, :option, @list_options %>

Obtengo la excepción :

You have a nil object when you didn’t expect it!
You might have expected an instance of Array.
The error occured while evaluating nil.[]

[1] http://wiki.rubyonrails.com/rails/pages/HowtoUseFormOptionHelpers

Les agradezco de antemano la ayuda.


Jaime Mora R.

Solucionado !, con un poco de refactorización, la versión final quedo de
la siguiente manera :

En el controlador :

class ChequesImprimirController < ApplicationController

def index
@list_options = [“Cheques de todas las cuentas”,
“Cheques de la cuenta …”,
“Ver cancelados”]
session[:option] ||= “Cheques de todas las cuentas”
my_struct = Struct.new(:option)
@options = my_struct.new
@options.option = session[:option]
end

def interactive_change
session[:option] = params[:option]
render_text params[:option]
end

end

En la vista :

<%= start_form_tag :action=> “interactive_change” %>
<%= select_tag :option,
options_for_select(@list_options, @options.option)
%>
<%= submit_tag(value = “Guardar cambios”) %>
<%= end_form_tag %>

De todas formas aprecio cualquier comentario al respecto.

Jaime Mora R.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs