Ciao a tutti!
Vi seguo da molto tempo ma non ho mai postato perchè sono sempre
riuscito a trovare soluzioni ai miei problemi su altri post.
Per questo problema che ora vi espongo però, alemno che non abbia
guardato bene, non sono riuscito a venirne a capo.
Sarà sicuramente una stupidaggine ma…
Ho le seguenti tabelle:
patchpanels
ethernetpatchpanelports
fiberpatchpanelports
Quello che vorrei fare nel patchpanelscontroller è il seguente:
ho un campo select dal quale posso scegliere se sono di fronte ad un
patchpanel ethernet (E(Ethernet)) o ad un patchpanel fibra (F(Fiber)).
Fin qua niente di anomalo.
Questo è il controller:
class PatchpanelsController < ApplicationController
active_scaffold :Patchpanel do |config|
config.theme = :blue
config.label = “Patch Panel”
config.columns[:typology].form_ui= :select
config.list.columns = [:typology, :name, :descr, :ports, :rack,
:uploads, :fiberopticcables, :ethernetpatchpanelports,
:fiberpatchpanelports]
config.list.sorting = { :name => :asc }
config.create.columns = [:typology, :name, :descr,:date, :ports,
:rack]
config.update.columns = [:typology, :name, :descr,:date, :ports,
:rack]
config.show.columns = [:typology, :name, :descr, :date, :ports,
:rack]
end
def after_create_save(record)
if params[:typology] = “E(Ethernet)”
record.ports.times do |num|
record.ethernetpatchpanelports.create(:position => num+1)
end
else
record.ports.times do |num|
record.fiberpatchpanelports.create(:position => num+1)
end
end
end
end
Perchè se seleziono E(Ehernet) mi riempe la tabella
ethernetpatchpanelports mentre se scelgo F(Fiber) continua sempre a
riempirmi la solita tabella?
Premetto che a livello di relazioni fra i tre oggetti e tutto a posto.
credo che sia una cazzata, ma non riesco a capire dove sbaglio.
Ho la sensazione che il controllo sul campo typology, non venga
effettuato o meglio che prenda sempre il primo come buono.
Sarei molto grato, se riusciste a risolvermi la questione.
Fatemi sapere.
Grazie in anticipo