【问题标题】:Best practices / patterns for building a specific complex form构建特定复杂表单的最佳实践/模式
【发布时间】:2015-10-24 18:38:25
【问题描述】:

我正在为用户构建一个能够查询 mongoDB 的表单。用户必须能够添加自己的“条目”,这样才能进行以下查询:

fieldA 等于 someValue

fieldB 大于someValue fieldB 小于otherValue

我希望参数如下所示:

{
  :r4nd0m => {
    :normal => ['someField', 'lte', 'someValue'],
    :or     => ['someField', 'gte', 'someValue']
  },
  :r4ndom_2 => {
    :normal => ['otherfield', 'is' '42179'],
    :or     => [] # Not filled
  }
}

我必须如何命名input names 才能完成此操作?有没有更好的方法从页面中获取这样的复杂表单数据,或者我是否走在正确的轨道上?

【问题讨论】:

  • 出于好奇,为什么提交的表单输入必须看起来像您的示例?这不是有效的 JSON,必须转换为正确的 MongoDB 查询。看起来需要进行一些 JavaScript 转换才能从序列化的表单数据转换为您的格式。
  • @willOEM 我想自己将其解析为合法查询。似乎我无法在 Javascript 的帮助下构建一组 HTML 输入,将 100% 完美地转换为 MongoDB 查询。我的问题是我正在努力让这种情况发生。
  • 假设你可以,因为 MongoDB 查询是 JSON 对象。您只需在对象创建中构建一些逻辑,以正确构建嵌套和/或逻辑和评估运算符。如果 Node 或 Angular 尚不存在用于此的库,我会感到惊讶。

标签: html forms mongodb input


【解决方案1】:

查看http://docs.mongodb.org/ecosystem/drivers/node-js/,因为您可以使用 Node.JS 解析您的 HTML,驱动程序将为您处理基础文档的创建。

【讨论】:

    猜你喜欢
    • 2021-03-13
    • 1970-01-01
    • 2017-07-02
    • 2011-07-21
    • 2013-01-15
    • 1970-01-01
    • 2011-01-14
    • 2017-09-21
    • 1970-01-01
    相关资源
    最近更新 更多