我如何在管理员之外复制 admin.TabularInline(在用户端?)
Posted
技术标签:
【中文标题】我如何在管理员之外复制 admin.TabularInline(在用户端?)【英文标题】:how can i replicate admin.TabularInline outside of the admin (on the user side?) 【发布时间】:2021-11-04 09:15:24 【问题描述】:鉴于模式 A 和模型 B 具有与模型 A 多对多关系的字段,我试图允许用户创建模型 B 的对象同时创建模型 A 的内联/在线对象-fly 就像 TabularInline 允许你在管理员上做的那样。
【问题讨论】:
【参考方案1】:这是一个非常常见的问题,解决方案并非易事(至少目前如此)。 Django 管理员使用 javascript(jQuery) 来完成这项任务。表单的乘法需要大量更改值和 ID 等。但最近人们开始使用 htmx 进行此操作。它的完成方式在 JustDjango 的this 文章中进行了彻底的解释。甚至还有一个关于它的视频教程。我个人喜欢他们这样做的方式。你可以试一试。感觉和看起来就像在 django 管理员中。如果你想纯粹在 django 中做,你可以查找formset_factory
【讨论】:
谢谢!这个 htmx 似乎是我需要的...我从文章中看到该示例是基于外键关系的。你知道它是否也适用于多线程吗? 是的,当然,它也应该适用于多对多。顺便说一句,如果答案对您有帮助,您可以选择它作为接受的答案。 我会尽快实施!以上是关于我如何在管理员之外复制 admin.TabularInline(在用户端?)的主要内容,如果未能解决你的问题,请参考以下文章
如何在函数之外获取数据,我尝试全局变量但它不起作用? [复制]
如何将 summarise_each 应用于除一列之外的所有列? [复制]