Skip to content

Instantly share code, notes, and snippets.

@bendrucker
Forked from pon/addressController.js
Last active August 29, 2015 13:57
Show Gist options
  • Save bendrucker/9417825 to your computer and use it in GitHub Desktop.
Save bendrucker/9417825 to your computer and use it in GitHub Desktop.
create = {
handler: function(request, reply) {
return new Address().save({
name: request.payload.name,
address_line1: request.payload.address_line1
})
.call('fetch')
.then(reply)
.catch(reply);
}
};
Address = Db.Model.extend({
tableName: 'addresses',
validate: function() {
var basicValidation, payload, schema;
payload = this.clone();
schema = {
name: Joi.string().max(50).required(),
address_line1: Joi.string().required()
};
basicValidation = Joi.validate(payload.toJSON(), schema, {
stripUnknown: true
});
if(basicValidation) {
throw new Error(basicValidation.message);
} else {
return;
}
}
});
db.Model.prototype.initialize = function() {
this.on('saving', this.validate, this);
};
Possibly unhandled Error: the value of name is not allowed to be undefined
at Db.Model.extend.validate (/Users/peternagel/workspace/lob/lob-api/build/app/models/addressesModel.js:66:13)
@pon
Copy link

pon commented Mar 7, 2014

Thanks for the updated snippets - I added it to our code but we're still having the same issue. The validation error is being caught in the .catch on the controller but I'm still logging out a possibly unhandled error.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment