قم بتحديد هياكل ملفات التكوين بسهولة ، والتحقق من صحة الملفات باستخدام القوالب. ؟
يتم اختبار Validit على Cpython 3.6 و 3.7 و 3.8 و 3.9. ببساطة التثبيت باستخدام PIP:
$ (sudo) pip install validit افتراضيًا ، يدعم ValiesIT فقط ملفات تكوين JSON ، أو البيانات المحملة بالفعل (وليس مباشرة من ملف التكوين). ومع ذلك ، باستخدام تبعيات إضافية ، يدعم Validit تنسيقات الملف التالية:
JSONYAMLTOMLلتثبيت Validit مع التبعيات المطلوبة الإضافية لدعم تنسيق الملف المفضل لديك ، استخدم:
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 لإنشاء قالب ، ستحتاج إلى وحدة Template الأساسية ، وعادة ما تكون الوحدات الأساسية الثلاثة الأخرى TemplateList ، و TemplateDict ، Optional .
في المثال التالي ، سنقوم بإنشاء قالب أساسي يمثل مستخدمًا واحدًا:
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.
) للتحقق من صحة بياناتك باستخدام قالب ، يجب عليك استخدام كائن Validate .
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 إذا تم تخزين بياناتك في ملف ، فمن الممكن استخدام كائنات ValidateFromJSON أو ValidateFromYAML أو 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 لا تزال Valiverit تحت التطوير النشط ، وقد تتغير بعض الميزات الأساسية بشكل كبير في المستقبل القريب.
إذا كنت تخطط لاستخدام ValidIt كاعتماد على مشروعك ، فإننا نوصي بشدة بتحديد الإصدار الدقيق للوحدة التي تستخدمها في ملف requirements.txt أو setup.py .
على سبيل المثال ، لتحديد الإصدار v1.3.2 استخدم السطر التالي في requirements.txt .
validit==1.3.2
validit[yaml]==1.3.2 # If using extra file formats