酥脆的表格选项卡有两次相同的名称

crispy form tab has twice the same name

我目前使用三个模型:

问题是,当我使用布局助手呈现我的 SubBriefe 选项卡时,我在 SubBriefeFields 的选项卡内,问题是如果 SubBriefeField 选项卡“example”在两个 Subbriefe 中,激活选项卡的 ID 不'按两次出现的方式工作,

您是否知道使 css.id 对于我的布局助手中的每个选项卡都是唯一的功能,因为我认为它已经存在于手风琴组中。

我在 Lib\site-packages\crispy_forms\bootstrap.py 中找到了答案,并将两个方法直接复制并粘贴到 forms.py 选项卡 class 和容器 class 中您将在容器初始化方法中分别重命名 Tabed 和 Containered if not self.css.id ... by

self.css.id = f"{self.name}{kwargs['roller']}" 并在您的新 taber 中添加参数 roller

Taber(名称,Row('', *FieldSet(lister), css_class='col-12'), roller=roller)

技巧已经完成,您将在选项卡中有选项卡,这些选项卡可以具有相同的名称,除了我们在选项卡的 css.id 末尾附加一个参数以防重复,

当然,我在 css.id 末尾使用主选项卡的指针,这样当我在第一个选项卡中时,子选项卡以 0 结尾,第二个选项卡 -> 子选项卡以 1 结尾....