PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Aggiungi proprietà all'oggetto restituito da Sequelize FindOne

Il Model di Sequelize class (di cui i tuoi gatti sono istanze) ha un toJSON() metodo che presumibilmente utilizzerà res.json per serializzare i tuoi gatti. Il metodo restituisce il risultato di Model#get() (https://github.com/sequelize/ sequelize/blob/95adb78a03c16ebdc1e62e80983d1d6a204eed80/lib/model.js#L3610-L3613 ), che utilizza solo gli attributi definiti nel modello. Se vuoi essere in grado di impostare il nome dei gatti, ma non memorizzare i nomi nel DB, puoi utilizzare una colonna virtuale quando definisci il tuo modello di gatto:

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

In alternativa, se non vuoi aggiungere proprietà alla definizione del modello:

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