【问题标题】:Create flash message when validation fails in KeystoneJS在 KeystoneJS 中验证失败时创建 Flash 消息
【发布时间】:2017-07-12 15:00:11
【问题描述】:

我需要根据验证错误的类型更改 Flash 错误消息。现在它总是说:Database error 如果我的自定义验证之一没有通过。

我的自定义验证发生在我的模型中,而不是在我的控制器中,所以我不确定如何在两者之间进行遍历。

这是我的自定义验证之一:

User.schema.path('email').validate(function (value) {
if (validator.isEmpty(value) || validator.isEmail(value)) {
    return true;
}
else {
    return false;
}
});

验证工作完美,只是我要更改的 Flash 消息。

【问题讨论】:

    标签: javascript validation model-view-controller keystonejs flash-message


    【解决方案1】:

    您也可以将自定义错误消息传递给validate 函数,只需将其与函数配对,将其包装在一个数组中,如下所示:

    User.schema.path('email').validate([function (value) {
    if (validator.isEmpty(value) || validator.isEmail(value)) {
        return true;
    }
    else {
        return false;
    }
    }, "WRONG!"]);
    

    【讨论】:

    • 我最初尝试过这个,但它没有任何效果。它仍然只显示database error
    • 那听起来像个bug
    猜你喜欢
    • 1970-01-01
    • 2015-03-27
    • 1970-01-01
    • 2012-09-09
    • 2014-02-18
    • 2016-02-29
    • 1970-01-01
    • 2011-02-26
    • 1970-01-01
    相关资源
    最近更新 更多