Ciao a tutti.
Vi illustro il mio problema, confidando in un vostro intervento
risolutivo.
Ho due tabelle così fatte:
CREATE TABLE `technicals` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(255) default NULL,
`tel` varchar(255) default NULL,
`cel` varchar(255) default NULL,
`fax` varchar(255) default NULL,
`email` varchar(255) default NULL,
`created_at` datetime default NULL,
`updated_at` datetime default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
CREATE TABLE `domains` (
`id` int(11) NOT NULL auto_increment,
`code` varchar(255) default NULL,
`domain_name` varchar(255) default NULL,
`structure_name` varchar(255) default NULL,
`structure_address` varchar(255) default NULL,
`adminc` varchar(255) default NULL,
`techc` varchar(255) default NULL,
`zonec` varchar(255) default NULL,
`notes` text,
`date` date default NULL,
`created_at` datetime default NULL,
`updated_at` datetime default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=28 .
Vi listo il codice del mio controller domain
class DomainsController < ApplicationController
active_scaffold :Domain do |config|
config.theme = :blue
config.label = "Lista domini"
config.columns[:code].label = "Codice dominio"
config.columns[:domain_name].label = "Dominio"
config.columns[:structure_name].label = "Denominazione struttura"
config.columns[:structure_address].label = "Sede"
config.columns[:adminc].label = "Admin C"
config.columns[:techc].label = "Tech C"
config.columns[:zonec].label = "Zone C"
config.columns[:notes].label = "Note"
config.columns[:date].label = "Data di assegnazione del dominio"
config.columns[:adminc].form_ui= :select
config.list.columns = [:code, :domain_name, :structure_name,
:structure_address, :adminc, :techc, :zonec, :notes, :date]
config.list.sorting = { :domain_name => :asc }
config.create.columns = [:code, :domain_name, :structure_name,
:structure_address, :adminc, :techc, :zonec, :notes, :date]
config.update.columns = [:code, :domain_name, :structure_name,
:structure_address, :adminc, :techc, :zonec, :notes, :date]
end
end
Vorrei fare in modo che quando inserisco un nuovo dominio, nella casella
adminc mi compaia un combo che mi permetta di scegliere il nome del
tecnico direttamente dalla tabella technicals.
ho modificato il domain_helper come segue:
module DomainsHelper
def adminc_form_column(record, input_name)
technicals = Technical.find(:all, :order => "name").map{|x|
[x.name]+[x.id]}
select_tag (:technicals_search, options_for_select(technicals))
end
end
Riesco a far comparire i nomi dei tecnici, scelgo, ma nel momento in cui
do la create, mi memorizza tutti i dati della form domain ad esclusione
dell'adminc.
Dove sbaglio?
Sto impazzendo ma non ne vengo a capo.
Grazie in anticipo
on 2009-06-15 18:28
on 2009-06-15 19:54
> ho modificato il domain_helper come segue: > > module DomainsHelper > def adminc_form_column(record, input_name) > technicals = Technical.find(:all, :order => "name").map{|x| > [x.name]+[x.id]} > select_tag (:technicals_search, options_for_select(technicals)) > end > end > > Riesco a far comparire i nomi dei tecnici, scelgo, ma nel momento in cui > do la create, mi memorizza tutti i dati della form domain ad esclusione > dell'adminc. > > Dove sbaglio? > Sto impazzendo ma non ne vengo a capo. > > Grazie in anticipo Credo di aver risolto! Ho modificato l'helper in questo modo: module DomainsHelper def adminc_form_column(record, input_name) technicals = Technical.find(:all, :order => "name").map{|x| [x.name]} select_tag input_name, options_for_select(technicals) end end E' il miglior metodo o esiste qualche altra cosa che io disconosco ( e ne disconosco il 99%)? Comunque grazie
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.