/

Resumen de tipos de campo

Todos los controles ->change_type() que xCRUD Nova Pro puede renderizar para un campo de formulario, desde texto plano hasta una captura de cámara en vivo.

->change_type()

->change_type($field, $type, $length = '', $extra = []) anula cómo se renderiza un campo en el formulario de creación/edición (y, para tipos como select, cómo se muestra su valor también en la edición en línea). Sin esta llamada, el tipo de un campo se infiere del tipo de columna de la base de datos.

ParámetroTipoPor defectoDescripción
$fieldstring-La columna a cambiar
$typestring-Uno de los tipos siguientes
$lengthstring''Solo tiene sentido para price: decimales (por defecto 2). Ignorado por el resto de tipos
$extraarray[]Array de opciones para select/multiselect/radio/checkboxes/switch, o ['prefix' => ..., 'suffix' => ...] para price

La lista de tipos

TipoDescripción
textEntrada de texto simple de una línea
textareaEntrada de texto plano multilínea
editorEditor WYSIWYG de texto enriquecido Quill, almacena HTML
selectDesplegable de un solo valor, construido a partir de las opciones de $extra
multiselectSelección múltiple, almacenada como un valor unido por comas
radioGrupo de botones de opción
checkboxesGrupo de casillas de verificación, valor unido por comas como multiselect
switchInterruptor explícito - siempre requiere exactamente 2 opciones
passwordEntrada de texto enmascarada (enmascarado solo visual, no un hash - se almacena como texto plano igual que cualquier otro campo de texto)
hiddenEntrada oculta, excluida de la edición en línea, se sigue enviando con el formulario
timeSelector de hora (las columnas TIME de MySQL lo obtienen automáticamente)
yearEntrada numérica restringida al rango YEAR de MySQL (1901-2155)
priceEntrada decimal con un prefijo/sufijo de moneda opcional
fileCampo de subida de archivo
imageSubida de imagen con opciones de redimensionado/recorte/marca de agua
videoCampo de subida de vídeo
cameraCaptura de cámara en vivo (foto), almacenada igual que image

Consulta Subida de archivos e imágenes y Medios, cámara y subida de vídeo para el conjunto completo de opciones de file/image/video/camera.

Ejemplo: un campo select

$extra acepta una lista simple (valor = etiqueta), un mapa valor=>etiqueta, o una lista de pares [valor, etiqueta]:

$xcrud->change_type('status', 'select', '', [
    'a' => 'Active',
    'i' => 'Inactive',
]);

Ejemplo: un campo price

$length establece los decimales, $extra establece un prefijo/sufijo de moneda:

$xcrud->change_type('unitPrice', 'price', '2', ['prefix' => '$']);