我找不到任何明显的指向自动形式标签来自Telescope的地方。在我可以看到的模式中没有标签(至少不是Posts),至少在Posts autoform调用中没有任何明显的...
{{> quickForm collection="Posts" id="submitPostForm" template="bootstrap3-horizontal" input-col-class="controls" type="method" meteormethod="submitPost" fields=postFields}}
...我无法找到任何字段集或其他明显的方法将标签传递给自动表单。因此,作为一个例子,Posts架构中的'createdAt'最终在表单中显示时显示标签为'Created At' - 该'转换'在何处以及如何发生?
TIA!
答案 0 :(得分:0)
没关系......我在挖掘了更多的东西之后找到了答案...有一个扩展SimpleSchema的国际化方法,在附加处理这个的模式之前调用:
SimpleSchema.prototype.internationalize = function () {
var schema = this._schema;
_.each(schema, function (property, key) {
if (!property.label) {
schema[key].label = function () {
// if property is nested ("telescope.email"), only consider the last part ("email")
if (key.indexOf(".") !== -1) {
key = _.last(key.split("."));
}
return i18n.t(key);
};
}
});
return this;
};
答案 1 :(得分:0)
使用tap:i18n包将表单标签国际化。因此,您可以在每个包的*.i18n.json
目录中找到当前语言的相应/i18n
文件中的翻译。