我想从另一个集合(即MyCollection)获取下拉选项。在这个集合中,我有所有的选项值(即选项)。我正在使用collection2包我想获得架构中的所有选项,而不是使用帮助器。
定义集合:
MyCollection = new Mongo.Collection('mycollection');
集合结构:
{
options : [A, B, C, D, E, F]
}
collection2 schema:
some-schema = new SimpleSchema({
dropdown : {
type : String,
label : "Select One",
autoform : {
options: /*....*/
}
}
});
html:
{{#autoForm schema='some-schema' id='some-id' type="method" meteormethod="some-method"}}
{{> afQuickField name='dropdown'}}
{{/autoForm}}
任何建议......
答案 0 :(得分:4)
您可以使用将在反应计算中执行的函数来动态计算可用选项列表。
SomeSchema = new SimpleSchema({
[...]
dropdown : {
type : String,
label : "Select One",
autoform : {
options: function(){
var doc = MyCollection.findOne();
var docOptions = doc && doc.options;
return _.map(docOptions, function(value){
return {
label: value,
value: value
};
});
}
}
}
[...]
});
您可以使用多种不同的方式在AutoForm选择中设置选项,请亲眼看看:https://github.com/aldeed/meteor-autoform#what-are-the-various-ways-i-can-specify-options-for-a-select-radio-group-or-checkbox-group