0

我找不到任何明显的指向自动表单标签在 Telescope 中的来源。我可以看到的架构中没有标签(至少对于帖子来说不是),至少在帖子 autoform 调用中没有什么明显的......

{{> quickForm collection="Posts" id="submitPostForm" template="bootstrap3-horizontal" input-col-class="controls" type="method" meteormethod="submitPost" fields=postFields}}

...我找不到将标签传递给自动表单的任何字段集或其他明显的方法。因此,作为示例,来自 Posts 模式的“createdAt”在表单中显示时最终会显示为“Created At”的显示标签——这种“转换”在哪里以及如何发生?

蒂亚!

4

2 回答 2

0

表单标签使用tap:i18n包进行国际化。因此,您可以在每个包的目录*.i18n.json中的当前语言的相应文件中找到它们的翻译。/i18n

于 2015-07-19T08:46:14.277 回答
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;
};
于 2015-07-19T04:09:55.743 回答