django - 在父级内显示多个子表单

时间:2009-09-26 17:28:29

标签: django forms composite

我一直在研究模态和模型。内联formset但我无法绕过我的复合对象,想看看django世界中的事情是如何完成的 -

我有这种分层模型
“作者”有很多“图书”
  每个“Book”都有 4个部分 - >第01节,第02节,第03节&第-04
    每个“部分”都有属性的数量。

想要自己展示所有书籍 如果单击一本书,我将展开一个隐藏的DIV,它将显示该书的4个部分。 像这样 -
Book-1 |书的简短描述(点击时,显示以下部分)
第01节|第02节|第04节|第04节|
书2 |书的简短描述(点击时,显示以下部分)
第01节|第02节|第04节| ...
...
..
点。

我找到了所有的HTML代码,使用jquery来显示/隐藏Divs。

问题 - 我很困惑如何将所有这些数据从视图传递到HTML页面,然后进行渲染,以便在用户编辑某些内容时,以Forms的形式传回内容。 BR />

但有没有办法可以一次性传递整个复合对象 - 作者+书籍+ AllSectionsInBook。

如果你能指出我的方向或你如何解决这个构图问题会很棒。 非常感谢提前!

1 个答案:

答案 0 :(得分:0)

这会很棒但不幸的是你必须自己写。这种蛮力的方式是为每本书提供作者形式,书籍形式,以及各部分的形式。然后保存作者表单。使用该作者ID保存书籍表格集中的每本书籍,最后使用书籍ID保存章节表格中的部分。

我经常考虑编写一个递归的内联formset,但似乎需要花很多时间才能做好。