On 7/3/07, Stefano G. [email protected] wrote:
ENVIROINMENT.RB
Add new inflection rules using the following format
(all these examples are active by default):
Inflector.inflections do |inflect|
inflect.irregular ‘aula’, ‘aule’ #oppure aulee
inflect.irregular ‘soluzione’, ‘soluzioni’ #oppure aulee
End
ho fatto giusto
MODEL Aula.rb
class Soluzione < ActiveRecord::Base
belongs_to :aula
End
ho fatto giusto
CONTROLLER
@aula = Aula.find (:first, :conditions => [“id = ?”,params[:id]]) #<—
devi passare l’id dell’aula selezionata
VIEW
<% for soluzione in @aula.soluzioni %>
<%= soluzione.id %>
<% end %>
allora io ho
@aule
che è l’insieme soluzioni per le aule che mi servono (già filtrate in base a
parametri passati alla action)
io devo fare delle operazioni(non banali) in ogni soluzione appartenente
a
@aule, non in una soltanto, poi devo memorizzare i risultati di tali
operazioni in una struttura (un hash nel mio caso) e passare tutto alla
vista per visualizzare i risultati.
per fare questo ho trovato questo metodo (@aule ce l’avevo già
precedentemente, mi serve così com’è per fare altre cose):
@aule = Soluzione.find (:all,
:joins => "as s INNER JOIN
codificaaule on
s.codificaaula_id = codificaaule.id",
:conditions => ["s.periododidattico_id
?",params[:id]],
:order => “codificaaule.fullname”,
:group => “codificaaule.fullname”)
@hsh = Hash.new
for aula in @aule
#soluzioni corrispondenti all'aula e al periodo didattico
passati
per parametro
@sol = Soluzione.find( :all,
:conditions =>
[“periododidattico_id =
? and codificaaula_id= ?”,params[:id], aula.id])
ris=....
@hsh[aula.id]=ris
end
Non mi convince il ciclo for, ma funziona. C’è un modo per calcolare @sol
senza usare il ciclo?
Ad ogni modo non ho capito perché cicli le aulee… Ovvero, se vuoi
selezionare piu aulee, quale è il critero? Dici che un’aula può essere in
piu soluzioni, ma cosi come ho capito io una soluzione può essere in una
sola aula (uno a molti e non molti a molti)
esatto uno a molti… un’aula è in più soluzioni… una soluzione può avere
una sola aula…