作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 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/
我是一名优秀的程序员,十分优秀!