gpt4 book ai didi

jquery - 如何在 Django 中设置 Django-Select2 小部件的初始值

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

我正在使用 django-select2 插件作为一个字段,让用户从数据库列表中选择一个机构(由 AJAX 驱动),并且效果很好。这是 forms.py 中的字段

    institution = forms.CharField(
widget = ModelSelect2Widget(
queryset=Institution.objects.all(),
attrs={'class': 'form-control'},
model=Institution,
search_fields=['name__icontains'],
max_results=500,
),

使用相同的表单,用户可以编辑/更改先前选择的研究所。然而,为此,我想将该字段的初始选择值设置为之前选择的机构。这给我带来了很多麻烦,因为尽管尝试了很多方法,我仍无法为插件设置初始值。

理想情况下,我希望在不使用任何 Javascript 的情况下设置插件的初始值(仅使用 Django 表单选项),例如:

current_instutition = Institution.objects.get(user=page_user)
form.fields['institution'].initial = current_institution

(以上不起作用)

我尝试使用 Select2 占位符选项在页面加载期间使用以下 Javascript 代码手动设置此选项:

$("#id_institution").djangoSelect2({
placeholder: {
id: '123',
text: 'My Institution'
}
});

这似乎根本没有做任何事情。(插件仍然加载,带有空(或没有)占位符)。我不确定 django-select2 是否覆盖手动 Select2 选项。

感谢任何帮助。谢谢!

最佳答案

您的 institution 字段是 CharField,而不是 ModelChoiceField。这就是这一行不正确的原因:

form.fields['institution'].initial = current_institution  

关于jquery - 如何在 Django 中设置 Django-Select2 小部件的初始值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45283717/

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