Foros del Web » Programando para Internet » Ruby »

como cambio un text_field a select_tag?

Estas en el tema de como cambio un text_field a select_tag? en el foro de Ruby en Foros del Web. Hola a todos ! :) es mi primer post en este foro. Estoy empezando en este lenguaje y he realizado un form Código: <!--[form:contract]--> <p><label ...
  #1 (permalink)  
Antiguo 21/08/2008, 02:31
 
Fecha de Ingreso: mayo-2008
Mensajes: 30
Antigüedad: 16 años, 7 meses
Puntos: 0
Pregunta como cambio un text_field a select_tag?

Hola a todos ! :) es mi primer post en este foro.
Estoy empezando en este lenguaje y he realizado un form

Código:
<!--[form:contract]-->
<p><label for="contract_total">Total</label><br/>
<%= text_field 'contract', 'total'  %></p>

<p><label for="contract_arrival">Arrival</label><br/>
<%= date_select 'contract', 'arrival'  %></p>

<p><label for="contract_departure">Departure</label><br/>
<%= date_select 'contract', 'departure'  %></p>

<p><label for="contract_adults">Adults</label><br/>
<%= text_field 'contract', 'adults'  %></p>

<p><label for="contract_children">Children</label><br/>
<%= text_field 'contract', 'children'  %></p>

<p><label for="contract_pending">Pending</label><br/>
<%= text_field 'contract', 'pending'  %> Pending indicates if total or minimum amount has been payed.<br>
<b>0</b>= total amount payed.<br>
<b>1</b>= minimum amount payed.</p>
<p><label for="contract_children">Un/Confirmed</label><br/>
<%= text_field 'contract', 'unconfirmed'  %></p> Confirmed indicates if customer has payed some.<br>
<b>0</b>= Yes, customer has payed.<br>
<b>1</b>= No, customer has not payed nothing.</p>
<!--[eoform:contract]-->
Me gustaria añadir una lista de numeros en lugar de los text_fields, para que el usuario no escriba nada solo que seleccionara un numero (1-15).
Alguna idea de como hacerlo?

Muchas gracias de antemano.

S@|u2.
  #2 (permalink)  
Antiguo 22/08/2008, 07:54
 
Fecha de Ingreso: abril-2008
Mensajes: 21
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: como cambio un text_field a select_tag?

Es algo sencillo como:

<%= select :atributo, (1..15).to_a %>

Saludos.
  #3 (permalink)  
Antiguo 23/08/2008, 01:14
 
Fecha de Ingreso: mayo-2008
Mensajes: 30
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: como cambio un text_field a select_tag?

Antes que nada muchas gracias por la respuesta.

Una ultima pregunta, cuando accedo a ese form, se cargan desde la bd en los text_fields los datos guardados y se puede modificar por ejemplo:

<p><label for="contract_adults">Adults</label><br/>
<%= text_field 'contract', 'adults' %></p>

se refleja en esto al cargar el form->

Adults:
4

La idea consiste (como se titula el post) en cambiar el text_field por una lista desplegable de numeros, pero que actue igual que el campo de texto, recogiendo el valor de la bd y luego guardar el numero de ese select_tag en la bd.

Actua igual esta lista que me sugieres?

S@|u2.
  #4 (permalink)  
Antiguo 24/08/2008, 08:42
 
Fecha de Ingreso: abril-2008
Mensajes: 21
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: como cambio un text_field a select_tag?

Si, deberia hacerlo.

PD: deberias probar primero la solucion que te dije, para ahorrarnos algo de tiempo en responder este tipo de preguntas.

Saludos.
  #5 (permalink)  
Antiguo 25/08/2008, 02:00
 
Fecha de Ingreso: mayo-2008
Mensajes: 30
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: como cambio un text_field a select_tag?

Me da este error:

Código:
 Showing app/views/contract/_form.rhtml where line #15 raised:

wrong number of arguments (2 for 3)

Extracted source (around line #15):

12: 
13: <p><label for="contract_adults">Adults</label><br/>
14: 
15: <%= select :atributo, (1..15).to_a %>
16: 
17: <p><label for="contract_children">Children</label><br/>
18: <%= text_field 'contract', 'children'  %></p>
S@|u2.
  #6 (permalink)  
Antiguo 26/08/2008, 14:33
Avatar de Yaraher  
Fecha de Ingreso: abril-2007
Ubicación: Lima, Perú
Mensajes: 262
Antigüedad: 17 años, 8 meses
Puntos: 9
Respuesta: como cambio un text_field a select_tag?

@akenateb, debes leer un poco y entender el código que estás ingresando.

":atributo" (sin comillas) debe ser cambiado por el atributo de tu model que modificará (digamos, "adults"), quedando algo como:

<%= select 'contract', :adults, (1..15).to_a %>

De todas formas, siempre es mejor revisar la documentación; encontrarás mucha información útil:

http://apidock.com/rails/ActionView/...per/select_tag
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:25.