Definieren Sie einfach Konfigurationsdateistrukturen und validieren Sie Dateien mithilfe der Vorlagen. ?
Validit wird auf CPython 3.6, 3.7, 3.8 und 3.9 getestet. Einfach mit PIP installieren:
$ (sudo) pip install validit Standardmäßig unterstützt Validit nur JSON -Konfigurationsdateien oder bereits geladene Daten (nicht direkt aus einer Konfigurationsdatei). Mit zusätzlichen Abhängigkeiten unterstützt Validit jedoch die folgenden Dateiformate:
JSONYAMLTOMLUm Validit mit den zusätzlichen erforderlichen Abhängigkeiten zur Unterstützung Ihres bevorzugten Dateiformats zu installieren, verwenden Sie:
pip install validit[yaml] # install dependencies for yaml files
pip install validit[toml] # toml files
pip install validit[json,toml] # json and toml files
pip install validit[all] # all available file formats Um eine Vorlage zu erstellen, benötigen Sie das grundlegende Template und normalerweise die anderen drei grundlegenden Module TemplateList , TemplateDict und Optional .
Im folgenden Beispiel erstellen wir eine grundlegende Vorlage, die einen einzelnen Benutzer darstellt:
from validit import Template , TemplateList , TemplateDict , Optional
TemplateUser = TemplateDict ( # a dictionary with 2 required values
username = Template ( str ), # username must be a string
passcode = Template ( int , str ), # can be a string or an integer.
nickname = Optional ( Template ( str )), # optional - if provided, must be a string.
) Um Ihre Daten mit einer Vorlage zu validieren, sollten Sie das Validate verwenden.
from validit import Template , TemplateDict , Optional , Validate
template = TemplateDict (
username = Template ( str ),
passcode = Template ( int , str ),
nickname = Optional ( Template ( str )),
)
data = {
'username' : 'RealA10N' ,
'passcode' : 123 ,
}
valid = Validate ( template , data )
if valid . errors : # if one or more errors found
print ( valid . errors ) # print errors to console
exit ( 1 ) # exit the script with exit code 1
else : # if data matches the template
run_script ( valid . data ) # run the script with the loaded data Wenn Ihre Daten in einer Datei gespeichert sind, können Sie die ValidateFromJSON verwenden, um aus den Objekten ValidateFromYAML oder aus den Objekten ValidateFromTOML :
from validit import Template , TemplateDict , Optional , ValidateFromYAML
filepath = '/path/to/data.yaml'
template = TemplateDict (
username = Template ( str ),
passcode = Template ( int , str ),
nickname = Optional ( Template ( str )),
)
with open ( filepath , 'r' ) as file :
# load and validate data from the file
valid = ValidateFromYAML ( file , template )
if valid . errors : # if one or more errors found
print ( valid . errors ) # print errors to console
exit ( 1 ) # exit the script with exit code 1
else : # if data matches the template
run_script ( valid . data ) # run the script with the loaded data Validit steht noch in aktiver Entwicklung, und einige Kernmerkmale können sich in naher Zukunft erheblich ändern.
Wenn Sie vorhaben, Validit als Abhängigkeit für Ihr Projekt zu verwenden, empfehlen wir dringend, die genaue Version des Moduls anzugeben, das Sie in den Skripten requirements.txt oder setup.py verwenden.
Verwenden Sie beispielsweise die Version v1.3.2 , um die folgende Zeile in Ihrer requirements.txt zu verwenden. TXT -Datei:
validit==1.3.2
validit[yaml]==1.3.2 # If using extra file formats