Autoform:我可以在架构中指定选项助手吗?

时间:2015-02-03 11:07:31

标签: meteor meteor-autoform

有没有办法在架构中指定选项助手?我试过了:

模式

{
  favoriteColor: {
    type: String,
    autoform: {
      options: "colorOptions"
    }
  }
}

但它似乎不起作用。

以下技术可以很好地显示带有表格选项的选择:

模式

{
  favoriteColor: {
    type: String
  }
}

辅助

Template.myFormTemplate.helpers({
  colorOptions: function () {
    return Colors.find().map(function (c) {
      return {label: c.name, value: c._id};
    });
  }
});

模板

{{> afQuickField name="favoriteColor" options=colorOptions}}

在我的实际架构中,我有一个对象数组,在每个对象中我需要从不同的集合中选择一个项目。当您使用afArrayField时,您不能像我在上面的模板中那样设置模板中的选项(因为它是一个对象数组,对象中的一个元素将引用帮助程序)。

在定义方案时,我唯一的选择是查询数据库吗?我想这会让它变得无反应,对吧?

1 个答案:

答案 0 :(得分:5)

{
  favoriteColor: {
    type: String,
    autoform: {
      options: function () {
    return Colors.find().map(function (c) {
      return {label: c.name, value: c._id};
    });
  }
    }
  }
}

直接将辅助函数插入到模式中将起作用。我正在做类似的事情而且是反应性的。