I profili
Modulo di esempio: hellotypes, proprietà editabledata.
hasprofile:true su una proprietà è il meccanismo più vantaggioso del framework: un solo booleano, e la proprietà guadagna il salvataggio/caricamento di configurazione con nome in database, senza scrivere una sola riga di codice.
"editabledata": {
"permission": 2,
"hasprofile": true,
"e": { "..." }
}Ciò che questo flag attiva, interamente automatico
- Salvataggio/caricamento: un client invia
PS/PLcon un nome di profilo; il server costruisce un’istantanea limitata alle proprietàhasprofile:truee la scrive in database (o la rilegge). Già gestito genericamente dal framework — nulla da scrivere nel modulo. - Lato interfaccia: la finestra “Impostazioni” di un modulo elenca solo le proprietà
hasprofile:true; la barra di caricamento/salvataggio di profilo appare solo se ne esiste almeno una. - Due liste di valori, anch’esse automatiche: ogni modulo ha la propria lista di profili salvati (vuota all’inizio, alimentata a ogni salvataggio), e il controller mantiene inoltre una lista aggregata per tipo di modulo, usata dal selettore di profilo dell’interfaccia.
Quasi tutti i moduli reali lo usano
È il meccanismo standard per qualsiasi configurazione che l’utente deve poter nominare, ritrovare e ricaricare — impostazioni di camera, parametri di sequenza, profilo di autofocus… Un modulo che espone impostazioni personalizzate dovrebbe quasi sempre avere almeno una proprietà hasprofile:true.