Проверки моделей амперсандов Mixin не ждет результата запроса MySQL
Я использую ampersand-model-validations-mixin в моем проекте nodejs. Синтаксис проверки
validations: { 'type': { type: function(){ return validateType(this._values.type); }, msg: 'type cannot be blank and it should be unique' },
validateType - это функция, которая проверяет из базы данных, является ли она уникальной или нет.
function validateType(type) {if (_.isEmpty(type)) {return false; } else {var searchData = '{"type" : "' + type + '"}';dao.searchDocument(process.env.DEVICE_CONNECTOR_TYPE_MODEL, searchData) .then(function(resp) {if (!_.isEmpty(resp)) {return false;}else{return true;}});}}
Но это не ожидание результата, а непосредственное его сохранение.
Есть идеи как это сделать??
1 ответ
Для "будущих поколений": в настоящее время асинхронные тесты не поддерживаются, как упоминалось здесь: https://github.com/jarredwitt/ampersand-model-validations-mixin/issues/1
Так что вам нужно расширить функциональность миксина, если вы хотите такого рода вещи.