3

我有一些链接模式,并试图从主模式的表单中访问子模式的属性。这是一口,我知道。代码可能会有所帮助:

//js
Collection = new Meteor.Collection('collection');
Schemas = {};
Schemas.secondary = new  SimpleSchema({
    unitType: {
       type: String,
      autoform: {
        type: 'select',
       options: //function with all the options 
     }
    }
});

Schemas.primary= new SimpleSchema({
    name: {
        type: String,
    },
        units: {
        type: [ Schemas.secondary ]
    }
});

Collection.attachSchema(Schemas.primary);


//HTML
{{#autoForm collection="Collection" id="someId" type="insert"}}
   {{> afQuickField name='name'}} // this works
   {{> afQuickField name='units'}} // this works
   {{> afQuickField name='units.unitType'}} // this doesn't work :-(
{{/autoForm}}

我这样做的原因是因为我想根据选择框的值有条件地显示辅助模式中的其他属性。我还尝试将表单放入表单中,然后运行{{#each afFieldNames name='"units"}},但这也不太奏效。它没有只给我单元中包含的字段(即辅助模式),而是循环遍历主要和辅助的所有字段。

想法?我没有与这种模式结婚,但我想不出另一种方式。

再次感谢大家。D b

4

1 回答 1

0

我自己也有这个问题。

试一试

{{> afQuickField scope='units.unitType' name='units.unitType'}} 

如果您在提交前挂钩中转储您的修饰符,您应该能够看到子文档已成功填写

AutoForm.hooks({
  someId: {
    before: {
      'insert': function(modifier) {
        console.log(modifier);
      }
    }
  }
});

让我知道这是否适合您!

一切顺利,艾略特

于 2015-05-26T00:15:17.090 回答