# La collection\_select

**URL:** <https://www.ruby-forum.com/t/la-collection-select/165431>\
**Category:** IT\
**Created:** [April 13, 2009, 11:33pm UTC](https://www.ruby-forum.com/t/la-collection-select/165431 "2009-04-13T23:33:52Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [April 13, 2009, 11:33pm UTC](https://www.ruby-forum.com/t/la-collection-select/165431/1 "2009-04-13T23:33:52Z")

</div>

…ho letto che ignora l’opzione :selected.  
Mi servirebbe per poter mantenere nella select il valore selezionato  
dopo che l’utente fa il submit.  
La stessa cosa che faccio per i text\_field\_tag :prova, params[:prova],  
in modo che il campo mantenga il valore inserito dopo il submit.  
Se la collection\_select ignora l’opzione :selected quali soluzioni  
posso adottare?

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [April 14, 2009, 9:00am UTC](https://www.ruby-forum.com/t/la-collection-select/165431/2 "2009-04-14T09:00:02Z")

</div>

Msan M. wrote:

> …ho letto che ignora l’opzione :selected.  
> Mi servirebbe per poter mantenere nella select il valore selezionato  
> dopo che l’utente fa il submit.  
> La stessa cosa che faccio per i text\_field\_tag :prova, params[:prova],  
> in modo che il campo mantenga il valore inserito dopo il submit.  
> Se la collection\_select ignora l’opzione :selected quali soluzioni  
> posso adottare?

la select prende il valore che ha l’oggetto instanziato, (incollo dalle  
api)

collection\_select(:post, :author\_id, Author.find(:all), :id,  
:name\_with\_initial, {:prompt =\> true})

> > > > ```
> > > > If @post.author_id is already 1, this would return:
> > > > 
> > > > ```

 Please select D. Heinemeier H. D. Thomas M. Clark

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [April 14, 2009, 10:39am UTC](https://www.ruby-forum.com/t/la-collection-select/165431/3 "2009-04-14T10:39:42Z")

</div>

2009/4/14 Alessandro S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> api)
> 
> M. Clark

Non credo sia la soluzione al mio problema.  
Io ho un form con una select creata con collection\_select.  
All’inizio questo campo e’ vuoto.  
L’utente seleziona un valore e preme il pulsante submit.  
Vengono visualizzati i risulatati ma il campo della select torna vuota  
mentre io vorrei che rimanesse il valore selezionato dall’utente in  
modo che potesse vedere qual’e’ stata la sua scelta.  
Con un campo di testo la cosa e’ semplice:\<%= text\_field\_tag :prova,  
params[:prova] %\> ma con una collection\_select come si puo’ fare?

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [April 14, 2009, 11:11am UTC](https://www.ruby-forum.com/t/la-collection-select/165431/4 "2009-04-14T11:11:23Z")

</div>

Il 14 aprile 2009 10.39, Mauro [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) ha scritto:

> Non credo sia la soluzione al mio problema.  
> Io ho un form con una select creata con collection\_select.  
> All’inizio questo campo e’ vuoto.  
> L’utente seleziona un valore e preme il pulsante submit.  
> Vengono visualizzati i risulatati ma il campo della select torna vuota  
> mentre io vorrei che rimanesse il valore selezionato dall’utente in  
> modo che potesse vedere qual’e’ stata la sua scelta.  
> Con un campo di testo la cosa e’ semplice:\<%= text\_field\_tag :prova,  
> params[:prova] %\> ma con una collection\_select come si puo’ fare?

se questi dati prima o poi finiranno dentro un oggetto e devi mostrare  
una preview, la cosa più semplice è creare un oggetto, senza  
conservarlo nel db.

pietro

---

<div class="post-metadata">

**Author:** ![msan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/3ab097/32.png) [@msan](https://www.ruby-forum.com/u/msan)\
**Post date:** [April 14, 2009, 11:42am UTC](https://www.ruby-forum.com/t/la-collection-select/165431/5 "2009-04-14T11:42:29Z")

</div>

2009/4/14 Pietro G. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> se questi dati prima o poi finiranno dentro un oggetto e devi mostrare  
> una preview, la cosa più semplice è creare un oggetto, senza  
> conservarlo nel db.

Non ho capito…devo solo fare in modo che nella la select  
rimanga l’ultima scelta fatta, cosa centra creare un oggetto?
