.. _widgetpedia/elements/inputfields/dbcombobox: comboBox e dbComboBox ===================== La *comboBox*, analogamente alla :ref:`filteringSelect` , permette di selezionare un valore partendo da una stringa di ricerca, ma a differenza della *filteringSelect* permette di individuare valori anche non presenti tra quelli resi disponibili, che di conseguenza saranno da considerare come un "suggerimento" all'utente, ma non vincolante. .. raw:: html
combobox
Così come per la *filteringSelect* esiste un analogo strumento che permette di lavorare sul database, la :ref:`dbSelect` , anche per la *comboBox* esiste la *dbCombobox*, un widget che serve a **cercare un dato da una table di database** partendo da una stringa di ricerca. A differenza della *dbSelect* in cui si cerca sul valore di un campo, ma viene restituita ed inserita nella form la primary key del record, nella *dbCombobox* viene inserito nella form **il valore stesso**. Anche in questo caso, quindi, è possibile inserire valori che non sono presenti nella table di origine. .. raw:: html
**Esempi** .. raw:: html Un combobox all'interno di un formbuilder con accanto un campo che riporti il valore selezionato. Questo combobox ha inoltre i parametri ``auxColumns``, per visualizzare i nomi degli stati nella tendina e il paramentro ``hasDownArrow`` per mostrare la freccia che apre il menu. .. raw:: html .. raw:: html
**Parametri:** +------------------------+------+--------------------------------------------------+ | Nome parametro | Tipo | Descrizione | +========================+======+==================================================+ |dbtable |T |(deprecato, sostituito con "table") | +------------------------+------+--------------------------------------------------+ |table |T |Indica la tabella da cui reperire i dati, nella | | | |forma "package.table" | +------------------------+------+--------------------------------------------------+ |hasdownarrow |B |True or False, permette di indicare se il campo | | | |mostrerà o meno una tendina | +------------------------+------+--------------------------------------------------+ | *Html Parametri* | +------------------------+------+--------------------------------------------------+ |_class |T |Permette di assegnare una specifica classe CSS al | | | |widget | +------------------------+------+--------------------------------------------------+ |height |T |Permette di assegnare un'altezza al widget | +------------------------+------+--------------------------------------------------+ |width |T |Permette di assegnare una larghezza al widget | +------------------------+------+--------------------------------------------------+ |border |T |Permette di assegnare un bordo al widget | +------------------------+------+--------------------------------------------------+ |rounded |L |Permette di assegnare un arrotondamento al widget | +------------------------+------+--------------------------------------------------+ |style |T |Permette di assegnare uno stile (da esprimersi | | | |come serie di attributi CSS) al widget | +------------------------+------+--------------------------------------------------+ |background |T |Permette di assegnare uno sfondo al widget | +------------------------+------+--------------------------------------------------+ | *Validations Parametri* | +------------------------+------+--------------------------------------------------+ |validate_empty |T |Restituisce un errore se il valore è nullo o è una| | | |stringa vuota | +------------------------+------+--------------------------------------------------+ |validate_notnull |B |Restituisce un errore se il campo è vuoto | +------------------------+------+--------------------------------------------------+ |validate_call |T |Restituisce un errore js | +------------------------+------+--------------------------------------------------+ |validate_regex |T |Restituisce un errore se il campo corrisponde | | | |esattamente a quanto indicato | +------------------------+------+--------------------------------------------------+ |validate_remote |T |Metodo RPC che effettua la validazione del valore | | | |inserito | +------------------------+------+--------------------------------------------------+ | *Common Parametri* | +------------------------+------+--------------------------------------------------+ |value |T |Permette di inserire un valore, in termini | | | |assoluti (es. value='Pippo') o posizionali (es. | | | |value='^.name'). Nel primo caso verrà assegnato il| | | |valore 'Pippo', nel secondo verrà assegnato a | | | |'name' il valore che inseriremo nell'inputfield. | +------------------------+------+--------------------------------------------------+ |lbl |T |Permette di inserire un'etichetta per il campo. | | | |Per div, caselle e aree di testo la "lbl" verrà | | | |visualizzata prima del campo, per le checkbox | | | |invece verrà mostrata dopo. | +------------------------+------+--------------------------------------------------+ |lbl\_ |T |Permette di assegnare attributi alla lbl (es: | | | |"lbl_class") | +------------------------+------+--------------------------------------------------+ |default |T |Valore di default se non modificato | +------------------------+------+--------------------------------------------------+ |placeholder |T |Testo di anteprima (non rappresenta un valore | | | |inserito ma solo un suggerimento) | +------------------------+------+--------------------------------------------------+ |disabled |B |Permette di disabilitare il campo. Es: | | | |disabled=True | +------------------------+------+--------------------------------------------------+ |tabindex |L |In un formbuilder con una serie di campi, permette| | | |di dare un ordinamento personalizzato nella | | | |compilazione nel passaggio da un campo a un altro | | | |con il tabulatore (es: tabindex=4) | +------------------------+------+--------------------------------------------------+ |_autoselect |B |Se impostato a True, alla selezione del campo il | | | |contenuto del campo sarà automaticamente | | | |selezionato | +------------------------+------+--------------------------------------------------+