django - 填写表格时如何从大量选项中进行选择

标签 django django-forms

我正在构建一个网络应用程序,允许我们的现场工作人员创建约会。这涉及创建包含许多外键的记录,其中一些来自非常大的表。例如,员工需要从数千名潜在客户中选择一位。

在 Django 中执行此操作的最佳方法是什么?

  • 一个弹出框,允许用户搜索客户,向他们提供结果,用户选择结果,然后填写主预约表格,然后 消失?
  • 将预约表单更改为客户选择页面 然后使用隐藏表单中的数据重新加载约会页面?或者 将数据保存在某些 session 变量中?
  • 一些来自 Ajax 方法。
  • 一个向导,其流程为:客户搜索页面、结果列表以及他们从结果中进行选择的内容,然后是下一个选项的搜索页面(例如产品选择)等

(我想让它尽可能简单。这是我的第一个 Django 项目和我的第一个网络项目比我关心的时间要长 记住)

ALJ

最佳答案

恕我直言,您应该考虑某种自动完成字段。我认为这将为用户带来最佳的可用性。不幸的是,这总是涉及 Ajax。但如果你认为所有用户都开启了JS那就没问题了。

例如

django-autocomplete

或者什么可能更强大:

django-ajax-selects


如果您采用向导方法,用户将需要更长的时间才能完成任务,并且更难以更改选择。

编辑:

使用 django-ajax-selects,您可以定义结果的外观。所以你可以例如在名称后面添加地址。

引用:

Custom search channels can be written when you need to do a more complex search, check the user's permissions, format the results differently or customize the sort order of the results.

关于django - 填写表格时如何从大量选项中进行选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2177633/

相关文章:

python - Django - 如何在多个表单上使用完全相同的 clean() 方法

python - 使用 channel 制作聊天应用程序时无法理解如何根据聊天室名称定义组名称

python - Django 项目 models.py 与应用程序 models.py

python - Django 日志记录不适用于 django shell

Django - 基于父实例的内联字段值

javascript - 当满足特定条件时,如何使 Django 表单中的字段变为只读?

django - Django 会在表单错误时重新填充文件字段吗?

python - 在 Django Heroku 应用程序中使用 print() 日志记录将信息记录到 Papertrail 的好处

Django Import Export - UNIQUE 约束失败

python - Django 在已经登录时显示 Auth 登录页面