Model
The model is a native JSON object. VueFormGenerator will modify this model if the values of the fields change. Model can be a multi-level object. In this case the model
of field will be like this:
model: "address.country"
Example
{
"id": 1,
"type": "personal",
"name": "Rozella Hickle",
"username": "Kelton.Dicki",
"password": "adGlGG8hTq",
"email": "[email protected]",
"address": {
"streetC": "343 O'Conner Stravenue Apt. 183",
"city": "East Traceyfurt",
"country": "Nepal",
"zipcode": "17779",
"geo": {
"lat": "-21.0406",
"lng": "86.5714"
}
},
"phone": "031.053.8042 x33435",
"website": "abraham.net",
"dob": -196498331535,
"time": "02:47:20",
"age": 53,
"rank": 7,
"role": "user",
"avatar": "https://s3.amazonaws.com/uifaces/faces/twitter/saulihirvi/128.jpg",
"skills": [
"ReactJS",
"CSS3"
],
"language": "it",
"status": true,
"created": 1461100485088
}
Merge & multiple models
If you would like to edit more models, first you have to merge these objects to a work object. For this, there is a helper function:
VueFormGenerator.schema.mergeMultiObjectFields(schema, objs)
Parameters
schema
: schema object with fields. Merge only themulti: true
fieldsobjs
: array of models
Return
Returns the merged JSON object like this:
{
"time": "02:47:20",
"address": {},
"status": true
}
The function only set those value of properties, where multiple mode is enabled multi: true
in the fields and the values in every models are the same value.
Create new empty model
You can create a new model with default values. For this use the VueFormGenerator.schema.createDefaultObject
function. The first parameter can be a base object.
Example with a generated ID:
let newModel = VueFormGenerator.schema.createDefaultObject(schema, {
id: getNextID(),
created: new Date().valueOf()
});
Result:
{
"id": 6,
"type": "personal",
"created": 1462972235132,
"status": true
}
Note:
type
andstatus
field have default values in the schema.