[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gepal-list] Re: Possibili opzioni per i campi
From: |
aldo |
Subject: |
[Gepal-list] Re: Possibili opzioni per i campi |
Date: |
Mon, 06 Mar 2006 22:42:15 +0100 |
Il giorno lun, 06/03/2006 alle 11.21 +0100, greggio cristian ha scritto:
> Aldo riusciresti a mandare la spegazione di tutte le possibili opzioni
> che possiamo inserire nei vari campi
>
> {
> nome:'',
> campo:'',
> ....
> ....
> ....
> }
>
> Colgo l'occasione per ricordardi le due opzioni nuove, stasera
> aggiorno l'hacking guide
OK allora le opzioni in questione sono gestite dalla classe field, che
risiede in modules/util/ui.py
in generale viene usato dalle classi util.ui.simpledbmodule e
util.ui.simpleview
riporto qui il costruttore:
class field:
def __init__ (self,name,title,type,defvalue,maxlen=0,optional=True,
password=None,help="",multiline=False,tooltip="",
ref=None,refname=None,refattrib={},readonly=False,
fkey=None,pkey=False,check=None,
autokey=False,fwvalue=None,metadata="",hidden=False):
[...]
analizziamo una ad una le opzioni:
- name: è il nome di riferimento del campo, verrà usato per far
riferimento al campo stesso e sarà eventualmente il nome sul DB
- title: è il titolo che compare accanto al campo in fase di
inserimento/modifica, è anche il titolo che compare nella colonna nel
caso della listview
- type: il tipo di dato, i possibili valori (al momento) sono:
- str: stringa di testo
- int: intero
- float: numero frazionario (NUMERIC in SQL)
- date: data (senza ora)
- se il valore è diverso o non supportato verrà usato str
- defvalue: il valore predefinito ad esempio in fase di inserimento
- maxlen: dipende dal tipo (type) indicato:
- se è str: indica il numero di caratteri massimo (se 0 vuol dire
infinito)
- se è int: indica il maggior valore che può assumere il numero (se
0 vuol dire infinito)
- se è float: indica il numero di cifre decimali.
- se è date viene ignorato (per adesso)
- se è diverso dai precedenti o comunque non supportato, viene
comunque preso = 0, e quindi in SQL il campo verrà in ogni modo definito
come tipo TEXT
- optional : indica se il campo può essere vuoto (lunghezza 0) valido
solo nel caso di tipo str
- password: indica che il campo è una password, bisogna indicare il
carattere da scrivere all'utente ad es. '*', se stringa vuota o None,
viene disabilitato
- help: fa visualizzare all'utente un pulsante che quando premuto
visualizza il testo specificato.
- multiline: (true o false) indica se il testo puo contenere piu righe
(valido solo nel caso di str)
- tooltip: specifica il suggerimento da visualizzare all'utente quando
si avvicina il puntatore del mouse sulla casella di testo
- ref: associa a questo campo una risorsa esterna. In pratica l'utente
ha la possibilità (tramite un pulsante) di visualizzare una risorsa e
selezionare un elemento, dopodichè il valore dell'elemento verrà
assegnato a questo campo (Es. ref="articoli/list"
- refname: indica quale campo dell'elemento associato (da ref) verrà
assegnato (Es. refname="articoli/codice"
- refattrib: permette di specificare dei parametri extra da passare alla
risorsa specificata in res
- readonly: (true o false) specifica se l'utente puo modificare o no il
campo
- fkey: specifica il legame a una chiave esterna (FOREIGN KEY), questo
verrà usato in fase di generazione del DB. (Es. fkey='articoli(codice)')
- pkey: (true o false) indica se questo campo è o no una chiave primaria
(applicazione come in fkey)
- check: specifica dei controlli da fare sui campi (SQL) (applicazione
come in fkey)
- autokey: (true o false) sta ad indicare che il campo è un AUTO
INCREMENT o SERIAL. L'utente non lo vede nel caso di inserimento. Sul
sql verrà assunto di tipo SERIAL.
- fwvalue: indica che al campo verrà assegnato il valore di un parametro
passato dalla risorsa precedente. fwvalue sta appunto ad indicare il
nome del parametro. Se è None o '' non fa niente. (Es. fwvalue='codice')
- metadata: serve a passare dei dati extra al client (per adesso non si
è chiari dell'utilità di questo. Può servire per usi futuri.
- hidden: nasconde all'utente il campo (non implementato) (non si è
chiaro se serve a qualcosa)
alla prossima puntata :)
Saluti,
--
Aldo Nicolas Bruno
LUG San Fidenzio - http://www.lugsanfidenzio.org/
Sviluppatore del progetto GEPAL - http://www.gepal.org/
Home page: http://aldox86.blogspot.com/
Jabber: address@hidden
GPG key ID: 0x3DFF1749
Per favore non mandatemi allegati in Word o PowerPoint.
Si veda http://www.gnu.org/philosophy/no-word-attachments.html
:
signature.asc
Description: Questa parte del messaggio è firmata