Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save paulo-sorrentino/d59e61163cc46a3d2847e225ba37d6f7 to your computer and use it in GitHub Desktop.
Save paulo-sorrentino/d59e61163cc46a3d2847e225ba37d6f7 to your computer and use it in GitHub Desktop.
Virtual fields using getter and setter methods in sequelize
var Sequelize = require('sequelize')
var sequelize = new Sequelize('sequelize_test', 'root')
//Note that the model definition does not have "fullName"
var User = sequelize.define('User', {
email: Sequelize.STRING,
firstName: Sequelize.STRING,
lastName: Sequelize.STRING,
},
{
getterMethods: {
fullName: function() {
return this.firstName + '' + this.lastName
}
},
setterMethods: {
fullName: function(fullname) {
var split = fullname.split(''),
this.firstName = split[0],
this.lastName = split[1]
}
}
})
sequelize.sync().success(function() {
User
.create({ email: 'john@smith.com', fullName: 'John Smith' })
.success(function(jsmith){ console.log(jsmith.fullName) })
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment