Desarrollo
Cómo restaurar las imágenes de un producto de Shopify que has sobrescrito accidentalmente mediante un archivo CSV
Problema: (manejo incorrecto de los archivos CSV) Ayer quise hacer una edición masiva de productos en Shopify, y cambiar el proveedor. Utilicé LibreOffice para seleccionar sólo las filas con el vendedor, lo actualicé, y subí sólo estas filas actualizadas como un nuevo CSV a Shopify. El resultado fue que Shopify eliminó muchas variantes, y...
WeiterlesenVuetify :: Abrir la fila de detalles de forma programada
Para la próxima versión de PiCockpit v2.0, estoy preparando una aplicación GPIO. Las entradas GPIO son filas de la tabla - y para configurarlas, queremos poder acceder a la fila de detalle haciendo clic en el botón de configuración: haciendo clic en el chevron o en el botón de configuración se abrirá la fila de detalle: Aquí...
Weiterlesenhabilitar y deshabilitar un servicio systemd en Python usando DBus
El próximo picockpit-client reacciona a los eventos de eliminación del frontend deshabilitando su servicio (sin embargo, la aplicación seguirá instalada). Del mismo modo, cuando decidas volver a ejecutar picockpit-client connect, el servicio se volverá a habilitar y se iniciará automáticamente por ti. Esto es posible utilizando la interfaz DBus de Python. el DBus es un sistema de bus para interactuar...
WeiterlesenCómo establecer ids de objetos únicos en documentos incrustados en una colección de MongoDB
El updateMany de MongoDB puede utilizarse para actualizar todos los documentos que coincidan. Problema Si, sin embargo, desea establecer nuevos ObjectIDs únicos en su actualización, se encontraría con que MongoDB establece el mismo ObjectID para cada entrada: db.getCollection('mypis_collectedpis').updateMany({}, {$set: {apps: { "com.picockpit/core": { meta: { versión: "2.0", name: "PiCockpit Core", image: "", descripción: "PiCockpit.com...
Weiterlesenpasar de JSON a MsgPack de forma compatible con Paho MQTT (JavaScript)
picockpit.com hace un uso intensivo de MQTT. Para la próxima versión 2.0 he decidido cambiar a MsgPack. ¿Por qué MsgPack? MsgPack (en realidad se llama MessagePack - los paquetes tienden a usar MsgPack) es un formato binario, destinado a la compatibilidad con JSON, pero disminuyendo el tamaño del archivo (lo que es bueno para ahorrar ancho de banda y recursos del servidor). Otra ventaja:...
Weiterlesenenvoy fix para servir archivos grandes desde el backend / timeouts / descargas abortadas
Los clientes se quejaban de que no podían descargar archivos grandes de nuestros sitios web (por ejemplo, PiDoctor en PiCockpit.com). Inicialmente no pude replicar el problema localmente, los archivos parecían descargarse bien. Después de investigar más a fondo determiné que las descargas se cortaban después de un cierto tiempo - dependiendo de su velocidad de descarga, por lo tanto,...
WeiterlesenTratando con NIL en JSON::Any en Crystal Lang
Uno de los retos al desarrollar con Crystal es que no es tan indulgente con los tipos de datos como, por ejemplo, Python o Ruby. nil te mantendrá ocupado. El siguiente mensaje de error: cast from Nil to String failed, at /usr/share/crystal/src/json/any.cr:220:5:220 puede resolverse de la siguiente manera # cast to string, LUEGO comprobar si es nil si...
WeiterlesenCódigo de salida de Chromium -5
Mientras que la ejecución de Chromium con chromium-browser -display=:0 https://www.picockpit.com le permitirá iniciar Chromium desde una conexión SSH (y saldrá a la pantalla principal en el servidor X), esto fallará cuando intente ejecutarlo con subprocess.Popen en Python: "comando": ["chromium-browser", "-display=:0", "https://picockpit.com"] (esto es parte del formato JSON que tengo...
Weiterlesenejecución segura de comandos con Python: subproceso.Popen
La seguridad es importante para mí durante el desarrollo del cliente-Picockpit. Lo siguiente se aplica a los sistemas Linux (pero probablemente es aplicable a todos los sistemas tipo Unix, incluyendo macOS) Python permite ejecutar comandos externos utilizando el módulo de subproceso. import subprocess En la próxima versión de PiCockpit, los usuarios podrán crear sus propios botones (simplemente editando...
Weiterlesen