挂钩 Umbraco 表单提交

Hook into Umbraco Forms submission

我想在提交表格并保存记录之前检查是否存在包含该电子邮件地址的记录。我做了一些研究,大多数人建议使用 RecordService.RecordSubmitted 事件,但是当我检查 Form.Core.Services 时,我看不到任何 RecordService。

是否有任何其他方法可以连接到该事件。

我正在使用 Umbraco 7.4.3 和表单 4.3.2

您有几个选择。一种是使用记录存储事件之一。这些包含在以下命名空间中:

Umbraco.Forms.Data.Storage.RecordStorage

可以参加以下活动:

  • 记录删除
  • 记录获取
  • 记录插入
  • 记录更新

我不是 100% 确定您是否可以删除 RecordInserting 事件中的记录,因为此时它可能不在数据库中,我还没有真正尝试过。

另一种选择是编写一个自定义工作流,该工作流在插入记录后运行,查找重复项并在记录重复时将其删除。 the Umbraco Community site.

上有一些相关文档

最后,您可以创建一些自定义验证,使用该电子邮件地址搜索现有记录,并使用 JQuery 或类似方式将其连接起来,如果验证失败则不提交表单。