望远镜形式标签 - 它们来自哪里?

时间:2015-07-19 03:21:50

标签: meteor telescope

我找不到任何明显的指向自动形式标签来自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!

2 个答案:

答案 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文件中的翻译。