# Rails

**URL:** <https://www.ruby-forum.com/t/rails/122184>\
**Category:** IT\
**Created:** [December 5, 2007, 11:24am UTC](https://www.ruby-forum.com/t/rails/122184 "2007-12-05T11:24:23Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [December 5, 2007, 11:24am UTC](https://www.ruby-forum.com/t/rails/122184/1 "2007-12-05T11:24:23Z")

</div>

Buongiorno lista.  
Vi rigiro il mio nuovo problema; premetto come al solito che ho iniziato  
da poco e ci dedico pochissimo tempo causa altri impegni, quindi  
scusate l’eventuale banalitÃ .  
Passiamo alla rogna.  
Devo fare una cosa del genere: l’utente si autentica nel  
sito/applicazione (con act\_as\_authenticated) e prima di giocare coi dati  
(leggasi inserire, vedere, ecc.) deve poter scegliere dei parametri.  
Meglio che faccia un esempio pratico.  
Parliamo di stalle e della gestione dei capi; l’allevatore entra con  
nome utente e password, deve poter vedere e scegliere le sue stalle, le  
quali possono avere piÃ¹ ragioni sociali e sotto di queste ci possono  
essere associati piÃ¹ proprietari (anche diversi da stalla in stalla). In  
qualche maniera ho cerato le varie associazioni tra i dati, ora dovrei  
fare una prima pagina con delle select che si comportano in questo modo:  
tra le stalle saranno visibili solo quelle dell’utente (e fin qui ci  
sono); una volta scelta quella su cui operare, nella select successiva  
dovranno comparire solo le ragioni sociali presenti in quella stalla e  
una volta scelta la ragione sociale, in quella contenente i proprietari  
appariranno solo quelli relativi a quest’ultima. Facie a dirsi…

Purtroppo ho appena capito come gestire le pagine statiche, per fare una  
cosa del genere non so proprio come partire. Subito mi Ã¨ venuto in mente  
di usare ajax e mi sono messo alla ricerca di esempi, testi,  
documentazione varia, ecc, ma naturalmente si trova di tutto, tranne  
quello che mi serve '^_^  
Ho imboccato la strada giusta, oppure c’Ã¨ qualcosa di piÃ¹ semplice?  
Eventualmente sapete dove posso trovare esempi esplicativi? Ne avete  
voi? ‘’’^_^

Poi, una volta risolto questo, l’utente dovrÃ operare con quel profilo  
(stalla-rag. soc.-proprietario) finchÃ©… beh, finchÃ© non ha finito.  
Usando act\_as\_authenticated ho la variabile current\_user, ma per tenere  
traccia di tutto quel macello non basta, logicamente. C’Ã¨ un sistema per  
memorizzare il “profilo” (che poi in caso sarÃ cambiato andando nella  
pagina di scelta iniziale)? Usando una variabile globale? Sto dicendo  
scemate? Mi sto complicando la vita inconsapevolmente ed inutilmente  
ignorando sistemi elementari?

Prometto che appena ho qualcosa che tende alla decenza pubblico tutto su  
sourceforge… o chi ne fa le veci, eventualmente 🙂

Grazie in anticipo per le risposte, fossero anche dei bei RTFM '🙂

Daneel O.

---

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [December 5, 2007, 11:26am UTC](https://www.ruby-forum.com/t/rails/122184/2 "2007-12-05T11:26:22Z")

</div>

Scusate, ho dimenticato mezzo titolo… vado in penitenza per  
un’oretta…

Daneel O.

Daneel O. wrote:

> Buongiorno lista.  
> […]

---

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [December 5, 2007, 11:51am UTC](https://www.ruby-forum.com/t/rails/122184/3 "2007-12-05T11:51:07Z")

</div>

Daneel O. wrote:

> Buongiorno lista.  
> …In  
> qualche maniera ho cerato le varie associazioni tra i dati, ora dovrei  
> fare una prima pagina con delle select che si comportano in questo modo:  
> tra le stalle saranno visibili solo quelle dell’utente (e fin qui ci  
> sono); una volta scelta quella su cui operare, nella select successiva  
> dovranno comparire solo le ragioni sociali presenti in quella stalla e  
> una volta scelta la ragione sociale, in quella contenente i proprietari  
> appariranno solo quelli relativi a quest’ultima. Facie a dirsi…

Nella view devi mettere un observe\_field sulla prima select

\<%= observe\_field ‘stalla\_utente\_id’,  
:url=\>{:action=\>‘select\_ragione\_sociale’}, :with=\>“stalla” %\>

Nel controller un’azione per recuperare le ragioni sociali

class StallaController  
…  
def select\_ragione\_sociale  
@ragioni=RagioneSoc.find(…)  
end  
…  
end

Ed infine un rjs per aggiornare la select

#file select\_ragione\_sociale.rjs  
page[‘stalla\_ragsoc\_id’].length=0  
@ragioni.each do |r|  
page \<\<  
“$(‘stalla\_ragsoc\_id’).options[$(‘stalla\_ragsoc\_id’).length]=new  
Option(’#{escape\_javascript(r.to\_s)}’,#{r.id})”  
end

ciao  
Massimo

---

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [December 5, 2007, 12:13pm UTC](https://www.ruby-forum.com/t/rails/122184/4 "2007-12-05T12:13:43Z")

</div>

> Purtroppo ho appena capito come gestire le pagine statiche, per fare una  
> cosa del genere non so proprio come partire.

Per adesso ti consiglio di fare una form per ogni select che quando  
submitti ti manda alla form successiva che contiene il valore  
selezionato nella prima select più una select per i valori da  
selezionare relativi alla prima scelta.

Quando hai fatto funzionare questo pensa all’implementazione ajax. Le  
select a cascata non sono la cosa più semplice da implementare.

---

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [December 5, 2007, 12:14pm UTC](https://www.ruby-forum.com/t/rails/122184/5 "2007-12-05T12:14:57Z")

</div>

Il mio consiglio è di non usare ajax fino a che non hai finito tutta  
l’applicazione e non hai tutte le funzionalità: ti confondi solo le  
idee…

jek

---

<div class="post-metadata">

**Author:** ![daneel\_olivaw](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/58f4c7/32.png) [@daneel\_olivaw](https://www.ruby-forum.com/u/daneel_olivaw)\
**Post date:** [December 5, 2007, 1:43pm UTC](https://www.ruby-forum.com/t/rails/122184/6 "2007-12-05T13:43:08Z")

</div>

Giovanni I. wrote:

> > Purtroppo ho appena capito come gestire le pagine statiche, per fare una  
> > cosa del genere non so proprio come partire.
> 
> Per adesso ti consiglio di fare una form per ogni select che quando  
> submitti ti manda alla form successiva che contiene il valore  
> selezionato nella prima select piï¿½ una select per i valori da  
> selezionare relativi alla prima scelta.

SÃ¬, anche una cosa del genere potrebbe andare bene per ora…  
Per usare questo sistema dovrei far ricaricare la pagina ad ogni  
selezione, in modo che aggiorni le select box successive, vero?

> Quando hai fatto funzionare questo pensa all’implementazione ajax. Le  
> select a cascata non sono la cosa piï¿½ semplice da implementare.

Ho notato 🙂

Daneel O.
