¿Hay alguna otra forma de insertar datos en la mangosta sin usar la desestructuración de la matriz? Tengo un código a continuación, no funciona, tampoco se inserta correctamente en la base de datos.
const data = req.file.originalname.split('.')[0].split('_'); if (data.length < 5) throw new Error('Invalid file name'); const content = await fs.readFile(req.file.path, 'utf8'); await orders.create({ data, content });
Puedo hacer que esto funcione usando este código usando la desestructuración de la matriz como se muestra a continuación, lo que quiero saber es que hay alguna forma sin usar la desestructuración y solo usar datos variables como mi código anterior
const data = req.file.originalname.split('.')[0].split('_'); if (data.length < 5) throw new Error('Invalid file name'); // const [no_telp, type, timespan, name, unique_code] = data; const content = await fs.readFile(req.file.path, 'utf8'); await orders.create({ no_telp, type, timespan, name, unique code, content });
Lo que está haciendo no es desestructurar la matriz. La desestructuración de la matriz significa extraer datos de la matriz. Un ejemplo de desestructuración de una matriz podría ser const listCopy = [...list]
o const listAdded = [...list, 12, 48]
. Si te refieres a esta parte create({ no_telp, type, timespan, name, unique code, content });
está proporcionando datos necesarios en el método de creación. Puede crear un abyecto de antemano y simplemente enviarlo para crear el método. const userData = { no_telp, type, timespan, name, unique code, content }; await orders.create(userData);
Además, lo que está tratando de guardar es una cadena de datos. Después de leer un archivo con fs.readFile()
, debe analizarlo para manipularlo y guardarlo en la base de datos correctamente. Prueba esto:
const stringData = await fs.readFile(req.file.path, 'utf8'); const content = JSON.parse(stringData) console.log(content) // see the data const userData = {no_telp, type, timespan, name, unique code, content}; await orders.create(userData);