2010-09-08 82 views
0

我在Django项目中有多个窗体。我试图使用Django提供的as_p来显示表单,因为它的简单性,但客户端需要在该字段下面的错误列表。 Django的as_p将其打印在字段标签上方。我宁愿不在每个模板中添加一个字段打印循环,只是为了这个小小的改变。这似乎是效率最低的方法。自定义Django中的窗体输出

想知道其他Django编码器会为此推荐什么。我认为至少存在3个选项:

- 自定义表单对象。这似乎是最可行的解决方案。任何人都知道这有什么缺点?

- 包含一个只处理表单显示的模板。问题是,这个模板必须假定表单被命名为某个名称。如果我有多个表单以不同的名字传递,那么怎么样?有谁知道如何解决这个问题?

- 也许是一个自定义过滤器?快速的谷歌搜索让我相信这不是一个可行的选择,但也许有人有相反的信息。

示例将不胜感激!

回答

2

包括一个模板,其中只有 处理窗体显示。问题 是,该模板必须假定 表单被命名为某个名称。如何 关于如果我有多个表单 与不同的名称传递? 有谁知道如何解决这个问题?

您可以在with块中包含您的表单模板,从而能够为名称发送值。

您也可以在表单主体模板中省略<form>标记,并将它们放在include中。

我认为这些将是easies的解决方案,并利用模板继承,您可以创建相当灵活的表单。

+0

啊,非常好。我不知道带标签。感谢您提供非常优雅的解决方案。多谢! – 2010-09-08 00:52:49

+0

+1,很好的解决方案。谢谢。 – ars 2010-09-08 02:11:46