Para modificar la tabla de otro plugin (o del core) podemos crear una extensión de esa tabla, es decir, crearemos un archivo xml con el nombre de la tabla en la carpeta Extension/Table de nuestro plugin.
Supongamos que queremos añadir la columna "usado" a la tabla de productos. Lo que normalmente harías es añadir el archivo Table/productos.xml a tu plugin con la columna deseada. Pero esto no es correcto. Al hacer esto lo que le estás diciendo a FacturaScripts es que la tabla productos se compone únicamente de la columna "usado".
Para este caso lo correcto es crear el archivo Extension/Table/productos.xml:
<?xml version="1.0" encoding="UTF-8"?>
<table>
<column>
<name>usado</name>
<type>boolean</type>
</column>
</table>
De esta forma lo que estamos indicando a FacturaScripts es que añada esta columna a la definición de la tabla productos. Los cambios se pueden ver reflejados en el archivos FacturaScripts/Dinamic/Table/productos.xml Observación: Las tablas en la base de datos sólo se modifican cuando son llamadas desde Facturascripts, en éste caso cuando naveguemos al menú productos.
Para crear este archivo con fsmaker simplemente ejecutamos:
fsmaker extension
En el asistente elegimos tabla y después escribimos el nombre de la nueva columna.
Los modelos de FacturaScripts cargan automáticamente todas las columnas de la tabla, es decir, si la tabla tiene una columna nueva también la va a cargar. Por este motivo no es necesario modificar el modelo al añadir una columna a la tabla.
Es posible que durante el desarrollo no vea la tabla creada en la base de datos o no se realicen los cambios del xml en la tabla. Si es así, vaya al menú administrador, Plugins y pulse el botón reconstruir.
Facturascripts crea las tablas que no existen cuando se instancia el modelo(por ejemplo new FacturaCliente()). Si ha creado un xml y aún no se ha instanciado al menos una vez, no se creará la tabla en la base de datos.
Cuando se realizan cambios en el xml no se aplican hasta que se borra la Cache ya que el sistema usa un sistema de Cache para evitar comprobar las tablas en cada petición. Así que si desea forzar la creación y modificación de la tabla en la base de datos siga los siguientes pasos:
Necesita identificarse para continuar con esta acción. Haga clic en iniciar sesión o cree una cuenta.
Iniciar sesiónEspaña, 11 años, nivel 100
FacturaScripts avanza más rápido gracias al apoyo financiero de los patrocinadores, que contribuyen a que podamos dedicar más tiempo al desarrollo, testeo y documentación. Usted también puede poner su granito de arena y convertirse en patrocinador ;-)
ORO¡Aprende a programar en PHP de manera fácil y divertida con nuestro curso básico! En este curso, te enseñaremos los conceptos fundamentales de la programación en PHP, incluyendo la sintaxis básica, el manejo de variables, estructuras de control de flujo y mucho más. Al terminar estarás listo para comenzar con el curso de creación de plugins para FacturaScripts.
34 | 9,99 € |
Con este curso aprenderá cómo crear un plugin sencillo para FacturaScripts: añadir nuevas páginas, tablas y columnas. Para entender este curso no se necesita mucha experiencia en programación, le enseñaremos los básico para modelar problemas sencillos. ¿A quién va dirigido? A cualquier persona con unos conocimientos muy básicos de programación o que ya han completado el curso de PHP. ¿Qué incluye? 18 lecciones con 14 vídeos explicativos.
361 | 9,99 € |
Esta es una recopilación de vídeos y documentación de pequeños desarrollos sobre FacturaScripts y sus plugins. Perfecto para expandir tus conocimientos de programación. ¿A quién va dirigido? A personas que ya hayan superado el curso básico de programación y busquen ampliar sus conocimientos. ¿Qué incluye? 22 lecciones con 22 vídeos explicativos (más de 11 horas de vídeos) y el código fuente de los ejemplos.
141 | 19,99 € |