1

我在这个问题上花了太多时间,并且开始认为它不能在 Django 中完成。我正在从 postgres 数据库中将病原体名称列表拉到下拉框中。用户选择病原体,需要通过 django 将 id 传回数据库,以便进一步检索更多数据。请参见

http://dpaste.com/119358/ 用于下拉代码。

问题是 select id = 语句位于表单检索病理 id 的位置之上。django 语句必须放在此处,否则下拉菜单不起作用。有没有人写过类似的东西并找到了解决方案?

最大限度

4

2 回答 2

5

您的 HTML 中的 select 标签的 id 不需要对您的病理记录有任何了解。您的代码是正确的,除了缺少关闭选择标记。

映射到 /pathology/ 操作 URL 的 Django 视图需要处理 POST 方法并将病理 id 从请求中拉出,如下所示:

pathology_id = request.POST['pathology']

现在,您可以通过其 id 在数据库中查找该对象并生成新页面/表单或您需要对其执行的任何业务逻辑。

您需要在 request.POST['...'] 调用中使用的字典键基于您为选择元素指定的名称,在本例中为“病理学”。

于 2009-02-11T17:27:16.320 回答
0

Django 的表单处理库是管理 HTML 表单的好工具。它将从数据库中提取选项,为下拉框生成 HTML 代码,并使用最少的代码为您将选择保存到数据库中。

于 2009-02-12T10:10:20.620 回答