3
我正在使用python-jsonschema進行json驗證。我有一個本地化的文本對象,其中RFC1766語言代碼鍵內指定爲如下:Jsonschema,使用自定義函數驗證對象鍵
"Description": {
"en": "English Description",
"sv": "Swedish Description",
"fr": "French Description"
},
I've read in the documentation,我可以使用「格式」屬性使用函數來檢查自定義格式。所以,我寫了一個方法,它將一個字符串作爲參數,如果它是RFC1766語言字符串,則返回True。
@_checks_drafts('rfc1766lang')
def rfc1766lang(instance):
"""some logic, return True if rfc1766"""
但是我找不到任何關於如何將此應用於對象鍵而不是值的驗證的示例。
這可能嗎?
我試圖像下面,但我不能成功
rfc1766_string_schema_v2 = {
'type': 'object',
'format': 'rfc1766lang',
'additionalProperties': False
}
我知道,如果我有JSON字符串如下它會容易得多。但是,現在這不是一個選項。
"Description": [{
"lan": "en",
"text": "Description in English"
}, {
"lan": "sv",
"name": "Description in Swedish"
}]
我什至不能找到如何將您的自定義格式檢查器應用於一個值,這將幫助我很多。您僅提供的文檔鏈接顯示如何使用預定義的格式。 – kev