gpt4 book ai didi

Django BooleanField 作为单选按钮但在内联表单之间

转载 作者:行者123 更新时间:2023-12-05 07:54:55 25 4
gpt4 key购买 nike

在我的项目中,用户可以使用任意数量的“联系方式”。例如,一个用户可以只定义移动电话,而另一个用户可以定义移动电话、邮件、Skype 和其他一些。应该可以为每个用户设置一个主要的“联系方式”,所以我创建了如下模型:

 class Account(AbstractNamedUser):
....

class Contact(models.Model):
account = models.ForeignKey(Account)
value = models.CharField(max_length=100)
is_default = models.BooleanField(default=False)

在后台管理中,我使用 admin.TabularInline,但不幸的是 is_default 字段是每个内联表单之间的独立复选框。我想要的是将它们更改为单选按钮,当然只有一个“行”可以是默认的。我试过 formfield_overrides、一些 ModelAdmin.formwidgets = {'is_default':forms.RadioSelect } 但它们只能在选择时正常工作单一形式的字段。

是否有可能在 Django 中指示字段 is_default 应该被视为内联表单之间的单选按钮?

最佳答案

是的,我个人经常使用它。

将类属性添加到您的 ModelForm 默认字段:

    def __init__(self, *args, **kwargs):
super(FormClassName, self).__init__(*args, **kwargs)
self.fields['default'].widget.attrs['class'] = 'default-img'

使用JS或者Jquery来操作:

    $(document).on("click", '.ElementClass', function () {
$('.ElementClass').prop('checked', false);
$(this).prop('checked', true);
});

关于Django BooleanField 作为单选按钮但在内联表单之间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30769187/

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