Skip to content

Commit 3f50191

Browse files
authored
fix: select2 init (#1094)
1 parent 635f529 commit 3f50191

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed

src/unfold/contrib/filters/forms.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class Media:
6161
"admin/js/vendor/jquery/jquery.js",
6262
"admin/js/vendor/select2/select2.full.js",
6363
"admin/js/jquery.init.js",
64-
"admin/js/autocomplete.js",
64+
"admin/js/select2.init.js",
6565
)
6666
css = {
6767
"screen": (

src/unfold/static/unfold/js/select2.init.js

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,39 @@
66
$.each(this, function (i, element) {
77
$(element).select2();
88
});
9+
10+
return this;
11+
};
12+
13+
$.fn.djangoAdminSelect2 = function () {
14+
$.each(this, function (i, element) {
15+
$(element).select2({
16+
ajax: {
17+
data: (params) => {
18+
return {
19+
term: params.term,
20+
page: params.page,
21+
app_label: element.dataset.appLabel,
22+
model_name: element.dataset.modelName,
23+
field_name: element.dataset.fieldName,
24+
};
25+
},
26+
},
27+
});
28+
});
929
return this;
1030
};
1131

1232
$(function () {
1333
$(".unfold-admin-autocomplete.admin-autocomplete").djangoCustomSelect2();
34+
35+
$(".admin-autocomplete")
36+
.not(".unfold-admin-autocomplete")
37+
.not("[name*=__prefix__]")
38+
.djangoAdminSelect2();
39+
});
40+
41+
document.addEventListener("formset:added", (event) => {
42+
$(event.target).find(".admin-autocomplete").djangoAdminSelect2();
1443
});
1544
}

0 commit comments

Comments
 (0)