gpt4 book ai didi

node.js - 使用 Mongo Schema 和 i18n 的多语言验证消息

转载 作者:可可西里 更新时间:2023-11-01 10:49:44 26 4
gpt4 key购买 nike

我是 Node.js/Mongo 的新手,我想知道如何使用 i18n 进行验证。到目前为止,这就是我所拥有的

架构

const UserSchema = new Schema({
language: {
type: String,
enum: ['fr', 'en']
},
email: {
type: String,
default: ''
}
});

验证

i18n.configure({
locales:['en', 'fr'],
directory:'locales',
defaultLocale: this.language,
cookie: 'locale'
});

UserSchema.path('email').validate(function (email) {
return email.length;
}, i18n.__('Email_is_required'));

我之前添加了 i18n 的配置,所以我可以使用它,但我知道这不是正确的方法。我尝试使用 this.language 但默认情况下它始终是英语。

我想使用在我的表单中发送的语言配置 i18n。有没有办法在模型中做到这一点?谢谢!

最佳答案

所以我找到了一个解决方法,这里是我目前的解决方案。我是直接用字段里的id

const UserSchema = new Schema({
email: {
type: String,
unique: 'Unique_email', // id error in en.json
trim: true,
default: '',
required: [true, 'Email_required']
}
});

在我看来,使用哈巴狗是我对每个错误所做的事情

ul
each error in errors
li!= __(error) // the error return will be the key for this language

关于node.js - 使用 Mongo Schema 和 i18n 的多语言验证消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43018655/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com