ze-ph.model_normal_var.mustache Maven / Gradle / Ivy
{{^isPrimitiveType}}
{{^isContainer}}
{{^isDate}}
{{^isDateTime}}
* @DTA\Strategy(name="Object", options={"type":{{datatype}}::class})
* @DTA\Validator(name="Dictionary", options={"type":{{datatype}}::class})
{{/isDateTime}}
{{/isDate}}
{{#isDate}}
* @DTA\Strategy(name="Date")
* @DTA\Validator(name="Date")
{{/isDate}}
{{#isDateTime}}
* @DTA\Strategy(name="DateTime")
* @DTA\Validator(name="Date", options={"format": \DateTime::RFC3339})
{{/isDateTime}}
{{/isContainer}}
{{#isContainer}}
* TODO check validator and strategy are correct and can handle container item type
* @DTA\Strategy(name="ObjectArray", options={"type":{{#items}}{{datatype}}{{/items}}::class})
* @DTA\Validator(name="Collection", options={"validators":{
* {"name":"Dictionary", "options":{"type":{{#items}}{{datatype}}{{/items}}::class}}
* }})
{{/isContainer}}
{{/isPrimitiveType}}
{{#isPrimitiveType}}
{{#isContainer}}
{{#items}}
* TODO check validator and strategy are correct and can handle container item type
* @DTA\Validator(name="Collection", options={"validators":{
* {"name":"Type", "options":{"type":"{{datatype}}"}}
* }})
{{/items}}
{{/isContainer}}
{{^isContainer}}
* @DTA\Validator(name="Type", options={"type":"{{datatype}}"})
{{/isContainer}}
{{/isPrimitiveType}}
{{#hasValidation}}
{{#minLength}}
{{#maxLength}}
* @DTA\Validator(name="StringLength", options={"min":{{minLength}}, "max":{{maxLength}}})
{{/maxLength}}
{{/minLength}}
{{^minLength}}
{{#maxLength}}
* @DTA\Validator(name="StringLength", options={"max":{{maxLength}}})
{{/maxLength}}
{{/minLength}}
{{#minLength}}
{{^maxLength}}
* @DTA\Validator(name="StringLength", options={"min":{{minLength}}})
{{/maxLength}}
{{/minLength}}
{{#minimum}}
* @DTA\Validator(name="GreaterThan", options={"min":{{minimum}}{{^exclusiveMinimum}}, "inclusive":true{{/exclusiveMinimum}}})
{{/minimum}}
{{#maximum}}
* @DTA\Validator(name="LessThan", options={"max":{{maximum}}{{^exclusiveMaximum}}, "inclusive":true{{/exclusiveMaximum}}})
{{/maximum}}
{{#pattern}}
* @DTA\Validator(name="Regex", options={"pattern":"{{{pattern}}}"})
{{/pattern}}
{{/hasValidation}}