sql >> Base de Datos >  >> RDS >> PostgreSQL

Agregar propiedad al objeto que devuelve Sequelize FindOne

El Model de Sequelize class (de la cual tus gatos son instancias) tiene un toJSON() método que presumiblemente utilizará res.json para serializar sus gatos. El método devuelve el resultado de Model#get() (https://github.com/sequelize/ secuela/blob/95adb78a03c16ebdc1e62e80983d1d6a204eed80/lib/model.js#L3610-L3613 ), que solo usa atributos definidos en el modelo. Si desea poder establecer el nombre de los gatos, pero no almacenar nombres en la base de datos, puede usar una columna virtual al definir su modelo de gato:

sequelize.define('Cat', {
  // [other columns here...]
  name: Sequelize.VIRTUAL
});

Alternativamente, si no desea agregar propiedades a la definición del modelo:

cat = cat.toJSON(); // actually returns a plain object, not a JSON string
cat.name = 'Macavity';
res.json(cat);