gpt4 book ai didi

Django 水平选择多个小部件

转载 作者:行者123 更新时间:2023-12-01 14:45:25 26 4
gpt4 key购买 nike

我有选项组,像这样:

Choices = (('Group1',(('Option1','Option1'),('Option2','Option2'))))

是否可以使用 SelectMultiple 小部件水平而不是垂直显示选项?我的问题是我的组太多,所以如果我能有类似下面的东西会更好。

Group 1 - Option1, Option2, ...
Group 2 - Option1, Option2, ...

更新 - 找到了这个,但它只对 CheckboxSelectMultiple “有效”。我应该如何更改它才能使用 SelectMultiple?

from django.utils.safestring import mark_safe

class HorizWidget(forms.SelectMultiple):

def render(self, *args, **kwargs):
output = super(HorizWidget, self).render(*args,**kwargs)
return mark_safe(output.replace(u'<ul>', u'').replace(u'</ul>', u'').replace(u'<li>', u'<p>').replace(u'</li>', u'</p>'))

最佳答案

你在使用 Django 管理员吗?如果是这样,filter_horizontalfilter_vertical options 可以使多项选择更有用(我必须承认,我以前没有尝试过分组选择)。

如果这没有帮助,那么您可以将 SelectMultiple 小部件子类化并根据需要覆盖 render 方法。我个人更喜欢尽可能使用 javascript 小部件插件(例如 jquery-ui-multiselect )。他们通常可以在您的模板 header 中使用几行 javascript,我发现这比编写自定义小部件 html 要轻松得多。

关于Django 水平选择多个小部件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9575434/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com