Я новичок в Node.js, и у меня возникла проблема с настройкой сообщения о проверке в node.js.I создалось простое приложение с Compound JS с использованием операции CRUD. В моем приложении есть поле под названием «id». В поле «id» принимается только целочисленное значение. Затем я проверяю поле, используя следующий код в model/user.js.Настроить сообщение о проверке в node.js
module.exports = function (compound, User) {
var num = /^\s*\d+\s*$/;
User.validatesFormatOf('id', {with: num, message:"is not a number"});
};
Используя приведенный выше код, он отлично работает. Но я также хочу проверить, пустое поле или нет. Затем я немного меняю код. Модифицированный код выглядит следующим образом:
module.exports = function (compound, User) {
var num = /^\s*\d+\s*$/;
User.validatesFormatOf('id', {with: num, message: {blank: "can't be blank", with: "is not a number"}});
};
Затем сообщение проверки, если поле пустым будет отображаться как это «Id не может быть пустым». Но когда я ввожу значение в поле id, отличном от номера, сообщение об ошибке проверки будет «Id [object Object]». Я думаю, что ключевое слово с не поддерживается. Является ли здесь любое другое ключевое слово, например «blank» или «min», поэтому я могу получить сообщение проверки, так как «Id не является числом».
Я нашел решение для этого, так что модифицированная версия user.js как это:
module.exports = function (compound, User) {
var num = /^\s*\d+\s*$/;
User.validatesPresenceOf('id', {message: "can't be blank"});
User.validatesFormatOf('id', {with: num, message:"is not a number"});
};
Проблема с приведенным выше кодом является то, что он отображает два сообщения проверки в то же время, то есть по умолчанию и пользовательское пустое сообщение отображается одновременно. Мое требование - показывать только одно сообщение проверки для поля за раз. Это возможно?
[Сообщение об ошибке здесь] (https://github.com/1602/jugglingdb/issues/230) – robertklep
[И ответ от разработчика здесь] (https://github.com/1602/jugglingdb/issues/230 # issuecomment-15223812). Другими словами, 'validatesFormatOf' * также * выполняет проверку' blank ', и вы не можете переопределить генерируемое сообщение. – robertklep