# Select e campi integer

**URL:** <https://www.ruby-forum.com/t/select-e-campi-integer/75276>\
**Category:** IT\
**Created:** [November 8, 2006, 7:47pm UTC](https://www.ruby-forum.com/t/select-e-campi-integer/75276 "2006-11-08T19:47:56Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![sij](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/b9e5f3/32.png) [@sij](https://www.ruby-forum.com/u/sij)\
**Post date:** [November 8, 2006, 7:47pm UTC](https://www.ruby-forum.com/t/select-e-campi-integer/75276/1 "2006-11-08T19:47:56Z")

</div>

Ciao  
Con questa select

\<%= select(:prescription, :frequenza, %w{Seleziona 1 2 3 4 5 6 7}) %\>

se il campo frequenza Ã¨ definito come integer  
in fase di modifica la combo non riporta il valore registrato in db  
ma compare “Seleziona” anche se in db vi Ã¨ per esempio 3  
mentre se definisco frequenza come char(1) nella combo compare  
l’effettivo valore memorizzato.  
Sto prendendo una cantonata?  
Ma se funziona effettivamente cosÃ¬  
come posso risolvere se voglio definire il campo frequenza come intero?

Grazie per l’attenzione

---

<div class="post-metadata">

**Author:** ![sij](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/b9e5f3/32.png) [@sij](https://www.ruby-forum.com/u/sij)\
**Post date:** [November 9, 2006, 10:13am UTC](https://www.ruby-forum.com/t/select-e-campi-integer/75276/2 "2006-11-09T10:13:07Z")

</div>

Sij wrote:

> Ciao  
> Con questa select
> 
> \<%= select(:prescription, :frequenza, %w{Seleziona 1 2 3 4 5 6 7}) %\>
> 
> se il campo frequenza Ã¨ definito come integer  
> in fase di modifica la combo non riporta il valore registrato in db  
> ma compare “Seleziona” anche se in db vi Ã¨ per esempio 3

Certo; le tue option sono  
[“Seleziona”, “1”, “2”, “3”, “4”, “5”, “6”, “7”]  
e quindi, poiche’ 3 (intero) non e’ compreso, la select ti seleziona la  
prima opzione (ovvero “Seleziona”)

> mentre se definisco frequenza come char(1) nella combo compare  
> l’effettivo valore memorizzato.  
> Sto prendendo una cantonata?  
> Ma se funziona effettivamente cosÃ¬  
> come posso risolvere se voglio definire il campo frequenza come intero?

Devi specificare i valori 1…7 tra le opzioni come interi, per esempio:

\<%= select(:prescription, :frequenza, (1…7).to\_a,  
:prompt=\>‘Seleziona’) %\>

Ciao  
Simo

---

<div class="post-metadata">

**Author:** ![sij](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/b9e5f3/32.png) [@sij](https://www.ruby-forum.com/u/sij)\
**Post date:** [November 9, 2006, 3:17pm UTC](https://www.ruby-forum.com/t/select-e-campi-integer/75276/3 "2006-11-09T15:17:00Z")

</div>

On 11/9/06, Simo [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Devi specificare i valori 1…7 tra le opzioni come interi, per esempio:
> 
> \<%= select(:prescription, :frequenza, (1…7).to\_a,  
> :prompt=\>‘Seleziona’) %\>

Object#to\_a è deprecated, per cui ti consiglio di usare [\*(1…7)].

Ciao,  
Antonio

---

<div class="post-metadata">

**Author:** ![sij](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/b9e5f3/32.png) [@sij](https://www.ruby-forum.com/u/sij)\
**Post date:** [November 9, 2006, 5:21pm UTC](https://www.ruby-forum.com/t/select-e-campi-integer/75276/4 "2006-11-09T17:21:35Z")

</div>

Simo wrote:

> Antonio C.
> 
> Simo

Ok  
Saluti e  
Grazie ad entrambi

---

<div class="post-metadata">

**Author:** ![sij](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/b9e5f3/32.png) [@sij](https://www.ruby-forum.com/u/sij)\
**Post date:** [November 9, 2006, 4:04pm UTC](https://www.ruby-forum.com/t/select-e-campi-integer/75276/5 "2006-11-09T16:04:20Z")

</div>

Antonio C. wrote:

> On 11/9/06, Simo [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:
> 
> > Devi specificare i valori 1…7 tra le opzioni come interi, per esempio:
> > 
> > \<%= select(:prescription, :frequenza, (1…7).to\_a,  
> > :prompt=\>‘Seleziona’) %\>
> 
> Object#to\_a ï¿½ deprecated, per cui ti consiglio di usare [\*(1…7)].
> 
> Ciao,  
> Antonio

(1…7).to\_a utilizza il metodo Enumerable#to\_a , e quindi non ci sono  
problemi

Ciao  
Simo
