2

我正在使用 autoform 生成一个“事件”表单。在事件中,我有开始日期、开始时间、结束日期、结束时间。在数据库中,我只想存储“开始”和“结束”,这将是日期和时间的组合。我可以手动执行此操作,但我没有使用 autoform 执行此操作。如何生成不属于我的架构的字段,并让这些字段与“文档”一起出现在我的提交前挂钩中?这是最好的方法吗?现在我正在尝试以下操作:

架构:

   start:
      type: Date
      label: 'Start'
   end:
      type: Date
      label: 'End'

模板:

template(name='eventsNew')
   +autoForm(collection='Events' id='insertEventForm' type='insert')
      fieldset
         legend Add an event
         +afQuickField(name='type')
         //- How do I output fields not in the schema and have them go to the form hooks? These output, but I can't get fields that are not part of the schema to work.
         +afQuickField(name='start')
         +afQuickField(name='end')
      button.btn.btn-primary(type='submit') Submit

表格挂钩:

AutoForm.hooks 
   insertEventForm:
      before:
         insert: (doc)->
            # Here is where I would think I could combine the times and dates
            # but I can't get them to come through.
            console.log doc
            doc

我已经尝试过 afFieldInputs 的日期和时间,但它们不会生成任何东西。不知道我做错了什么。预先感谢您的帮助。

4

1 回答 1

1

addHooks 选项仅在您想将相同的钩子应用于超过 1 个表单 (an array) 时使用,在此示例中您仅使用 1 个表单 ( insertEventForm),因此,简单的hook将在这里工作。

我不做咖啡对不起

简单的JS

AutoForm.hooks({
  insertEventForm:{
    before:{
     insert:function(doc){
        console.log(doc) //do more stuff here
       }
     }
  }
})
于 2015-02-28T19:32:35.713 回答