2014-09-11 4 views
0

Je voudrais changer une valeur dans mon modèle selon un paramètre d'un modèle associé ...Problème avec SequelizeJS et les relations

Je ne sais pas comment le sexe d'un client dans mon rendez-vous modèle ...

var Appointment = db.define('Appointment', { 
    title: { 
     type: Types.STRING, 
     validate: { 
      len: { 
       args: [1, 50], 
       msg: 'Vous devez saisir un titre entre 1 et 50 caractères.' 
      } 
     } 
    }, 
    start: { 
     type: Types.DATE 
    }, 
    end: { 
     type: Types.DATE 
    }, 
    backgroundColor: { 
     type: Types.STRING, 
     defaultValue: 'red' 
     set: function(value){ 
      // if Customer.gender === 'M' >> this.backgroundColor = 'red' 
      // if Customer.gender === 'F' >> this.backgroundColor = 'yellow' 
     } 
    } 
}, { 
    classMethods:{ 
     associate: function (models) { 
      Appointment.belongsTo(models.Customer, {as: 'Customer'}); 
     } 
    } 
}); 

Répondre

0

vous pouvez utiliser:

Appointment.find({ where : {id :1}, 
        include : User }) 
.success(function(appointment){ 
    console.log(appointment); // visualize your instance 
    appointment.user.gender; 
}); 

plus d'infos: https://github.com/sequelize/sequelize/wiki/API-Reference-Model#findAll recherchez l'option [options.include]

Peut-être une bonne réponse aussi: sequelize fetching associations on find (1.6)

+0

Je voudrais le faire que dans mon modèle ... – tonymx227

+0

faire une requête et modifier la valeur de cette requête ne sera pas faire le travail? – nobe4

+0

fera mais est-ce possible de le faire dans le modèle ou non? – tonymx227

Questions connexes