Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- schema: {
- fields: [
- {
- type: "input",
- inputType: "text" | "password" | "email" | "number",
- label: "Some text",
- model: "modelName",
- disabled: "true" | "false",
- placeholder: "Some placeholder text",
- name: "",
- validate: Veelidate Options,
- error: "name",
- ref: "",
- data-vv-as: ""
- },
- {
- type: "checkbox",
- name: "Some name",
- model: modelName,
- text: "Some text to show"
- },
- {
- type: "select",
- label: "Some text",
- placeholder: "Select a option",
- model: "modelName",
- options: [{ value: 'True', label: 'Si' }, { value: 'False', label: 'No' }]
- },
- {
- type: "multiselect",
- model: modelName,
- tagPlaceholder: "Some tag text",
- placeholder: "Some text",
- label: "Some text",
- trackBy: "model field",
- allowEmpty: "true" | "false",
- options: optionsObject,
- multiple: "true" | "false",
- taggable: "true" | "false",
- hideSelect: "true" | "false",
- tagMethod: addTag
- }
- ]
- }
- Ejemplo modelo "User"
- campo: "username"
- {
- type: "input",
- inputType: "text",
- label: "Nombre de Usuario",
- model: "username",
- disabled: "false",
- placeholder: "Ingrese el username",
- name: "username",
- validate: Veelidate Options,
- error: 'getError("username")',
- ref: "",
- data-vv-as: ""
- },
- si el modelo es password en el ref tengo que pasar el mismo nombre que el campo
- ejemplo: model:"password1", ref: "password1"
- {
- type: "input",
- inputType: "password",
- label: "Contraseña",
- model: "password1",
- disabled: "false",
- placeholder: "Contraseña",
- name: "password1",
- validate: Veelidate Options,
- error: 'getError("password1")',
- ref: "password1",
- data-vv-as: "password1"
- },
- campo: password2
- {
- type: "input",
- inputType: "password",
- label: "Contraseña",
- model: "password2",
- disabled: "false",
- placeholder: "Contraseña",
- name: "password2",
- validate: "required|alpha|alpha_num|min:8|max:10",
- error: 'getError("password2")',
- data-vv-as: "password1"
- },
- {
- type: "checkbox",
- name: "is_superuser",
- model: "is_superuser",
- text: "Es Superusuario"
- },
- {
- type: "select",
- label: "Activo",
- placeholder: "Seleccione una opcion.. ",
- model: "activo",
- options: [{ value: 'True', label: 'Si' }, { value: 'False', label: 'No' }],
- }
- Asignacion de permisos
- {
- type: "multiselect",
- model: "permissions",
- tagPlaceholder: "Permisos de Usuario",
- placeholder: "Seleccione permiso...",
- trackBy: "id",
- allowEmpty: "true" | "false",
- options: [
- {
- id: 34,
- name: "Puede Crear Cuenta Bancaria"
- },
- {
- id: 36,
- name: "Puede Inactivar Cuenta Bancaria"
- }
- ],
- selected: [
- {
- id: 35,
- name: "Puede Eliminar Cuenta Bancaria"
- }
- ],
- multiple: "true" | "false",
- taggable: "true" | "false",
- hideSelect: "true" | "false",
- isAutocomplete:"true" | "false",
- search:"Cuenta B",
- url:"/api/usuarios/permissions/?search="
- }
- Validations
- _default: (field) => `El valor ingresado para el campo ${field} no es válido.`,
- after: (field, [target]) => `${field} debe estar luego de ${target}.`,
- alpha: (field) => `${field} sólo puede contener caracteres alfabéticos`,
- alpha_dash: (field) => `${field} puede contener caracteres alfanuméricos, así como guiones y guiones bajos.`,
- alpha_num: (field) => `${field} sólo puede contener caracteres alfanuméricos.`,
- alpha_spaces: (field) => `${field} sólo puede contener caracteres alfabéticos y espacios.`,
- before: (field, [target]) => `El campo ${field} debe estar antes del campo ${target}.`,
- between: (field, [min, max]) => `El valor del campo ${field} debe estar entre ${min} y ${max}.`,
- confirmed: (field) => `Las contraseñas deben coincidir.`,
- credit_card: (field) => `El campo ${field} no es válido.`,
- date_between: (field, [min, max]) => `El campo ${field} debe estar entre ${min} y ${max}.`,
- date_format: (field, [format]) => `El campo ${field} debe estar en el formato ${format}.`,
- decimal: (field, [decimals] = ['*']) => `El campo ${field} debe ser numérico y sólo puede contener ${decimals === '*' ? '' : decimals} decimales.`,
- digits: (field, [length]) => `El campo ${field} debe ser numérico y contener exactamente ${length} dígitos.`,
- dimensions: (field, [width, height]) => `El campo ${field} debe ser de ${width} pixeles por ${height} pixeles.`,
- email: (field) => `El campo ${field} debe ser una dirección de correo electrónico válida.`,
- // excluded: (field) => ``,
- ext: (field) => `El campo ${field} debe ser un archivo válido.`,
- image: (field) => `El campo ${field} debe ser una imagen.`,
- // included: (field) => ``,
- integer: (field) => ``,
- ip: (field) => `El campo ${field} debe ser una dirección IP válida.`,
- ip_or_fqdn: (field) => ``,
- // is: (field) => ``,
- // is_not: (field) => ``,
- // length: (field) => ``,
- max: (field, [length]) => `El campo ${field} no puede tener más de ${length} caracteres.`,
- max_value: (field, [max]) => `El campo ${field} debe ser menor o igual a ${max}.`,
- mimes: (field) => `El campo ${field} debe ser un tipo de archivo válido.`,
- min: (field, [length]) => `El campo ${field} debe tener al menos ${length} caracteres.`,
- min_value: (field, [min]) => `El campo ${field} debe ser ${min} o más.`,
- numeric: (field) => `El campo ${field} sólo puede contener caracteres numéricos.`,
- regex: (field) => `El formato del campo ${field} no es válido.`,
- required: (field) => `El campo ${field} es requerido.`,
- // required_if: (field) => ``,
- size: (field, [size]) => `El campo ${field} debe ser menor a ${size} MB.`,
- url: (field) => `El campo ${field} no es una URL válida.`
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement