Metodo th_form

Gestire i dati di una risorsa

Riprendento la form di base descritta alla sezione precedente, vediamone in dettaglio il suo contenuto:

def th_form(self, form):

    #1.
    pane = form.record
    #2.
    fb = pane.formbuilder(cols=2, border_spacing='4px')

    #3.
    fb.field('ragione_sociale',colspan=2)
    fb.field('cliente_tipo_codice')
    fb.field('pagamento_tipo_codice')
    #4.
    fb.field('indirizzo',colspan=2)
    fb.field('provincia')
    #5.
    fb.field('comune_id',condition='$sigla_provincia=:provincia',
                condition_provincia='^.provincia')
    fb.field('email',validate_email=True, colspan=2)

#1. Il metodo principale, riceve un generico pane sul quale viene generato il contenitore dei dati.

#2. A partire dal pane, viene creato un oggetto di tipo formbuilder (fb) impostandone il numero di colonne e lo spazio dei bordi.

#3. Infine, sul formbuilder appena ottenuto, si vanno ad aggiungere le colonne della table

#4. Qualora si abbia bisogno di uno spazio maggiore per una colonna, si potrà, tramite il parametro colspan istruire il formbuilder che, per quella si estenderà su 2 colonne della form.

#5. In questa riga viene imposto che la lista dei comuni selezionabili, appartenga alla provincia selezionata in modo che le due informazioni siano coerenti fra loro.

Con il metodo th_form, in sostanza, è possibile specificare come gestire lo spazio e i contenuti di una Form. È possibile inserire tutte le tipologie di Elementi di Layout (container e pane) e al loro interno i vari Widget, dei Components o altri Tablehandler .

Autore della sezione: Valter Vettorello e Davide Paci