2017-10-02 2 views
0

Ich verwende die json-schema-faker und ich bin es mit Faker verwendet, die mir zufällig „echten“ Format Werte erhalten können, wie E-Mails, Bild-URL usw.
dieses Schema funktioniert gut:json Schema faker mit gefälschten Muster

{ 
    "type": "object", 
    "properties": { 
    "myPattern":{ 
     "type": "string", 
     "pattern": "pattern1||pattern2" 
    }, 
    "image": { 
     "type": "string", 
     "faker": "image.city" 
    } 
    }, 
    "required": [ 
    "myPattern", 
    "image" 
    ] 
} 

Aber was ich wirklich will, ist, dass die faker wird ein Muster wie die Immobilie erhalten myPattern bekommt.
Ich habe einige Variationen versucht, aber keine funktioniert.
Einige Syntax Ich habe versucht:
"faker": "image.city||image.food"

"faker": { 
    "fake": { 
     "pattern": "image.city||image.food" 
    } 
    } 

-

"faker": { 
    "pattern": "image.city||image.food" 
    } 

Antwort

0

wenn Sie verwenden:

"faker": { 
    "pattern": "image.city||image.food" 
} 

die hinter ausgeführten Code wird ähnlich der folgenden sein: faker.pattern("image.city||image.food")

Ihrem speziellen Fall beheben Sie mögliche Variationen von faker wickeln müssen nennt als oneOf:

{ 
    "type": "object", 
    "properties": { 
    "myPattern":{ 
     "type": "string", 
     "pattern": "pattern1||pattern2" 
    }, 
    "image": { 
     "type": "string", 
     "oneOf": [ 
     { "faker": "image.city" }, 
     { "faker": "image.food" } 
     ] 
    } 
    }, 
    "required": [ 
    "myPattern", 
    "image" 
    ] 
} 

Es scheint jetzt zu funktionieren: http://json-schema-faker.js.org/#gist/9c5cb08965aeeb46b11ca6856251aa80/0.4.3