4

我有一个表格供人们创建一个稍后将有成员的活动,尽管不是在创建时。创建事件时,不应添加任何成员,因此自动表单不显示成员字段:

createEvent.jade

template(name="createEvent")
  +quickForm(collection="Events" id="createEventForm" type="insert" fields="name,description,location")

对于要提交的表单,我相信我必须确保Events集合的所有必填字段都有一个值,即使那不是表单。即使我尝试添加defaultValue,表单也不会提交(提交按钮无效,我正在检查 minimongol 以确保没有记录条目):

  crew: {
    type: [String],
    label: "Crew",
    defaultValue: ""
  },

autoValue将创建者添加为成员:

  crew: {
    type: [String],
    label: "Crew",
    autoValue: function() {
      return this.userId;
    },
  },

我在一分钟前遇到了这个问题,默认情况下设置了没有表单字段的事件创建者,现在它可以工作了:

  host: {
    type: String,
    label: "Host",
    autoValue: function() {
      return this.userId;
    },
  },

但我无法让这个基于数组的默认值运行。我也试过defaultValue: "['']"和其他几个。暂时卡住了,求帮助。。

4

1 回答 1

6

如果您希望将创建者添加为默认成员,您可以使用:

crew: {
    type: [String],
    label: "Crew",
    autoValue: function() {
        if( this.isInsert ) {
            return [ this.userId ]
        }
    }
}

如果要默认插入一个空数组,请尝试:

crew: {
    type: [String],
    label: "Crew",
    defaultValue: [],
    minCount: 0
}
于 2015-06-05T02:25:39.760 回答