您可以在 Django 管理员中使用 jQuery:
class MenuAdmin(admin.ModelAdmin):
# ...
class Media:
js = ('/static/admin/js/hide_attribute.js',)
ModelAdmin
并InlineModelAdmin
有一个media
属性返回一个媒体对象列表,这些对象存储表单和/或表单集的 JavaScript 文件的路径。
hide_attribute.js 的内容:
hide_page=false;
django.jQuery(document).ready(function(){
if (django.jQuery('#id_has_submenu').is(':checked')) {
django.jQuery(".page").hide();
hide_page=true;
} else {
django.jQuery(".page").show();
hide_page=false;
}
django.jQuery("#id_has_submenu").click(function(){
hide_page=!hide_page;
if (hide_page) {
django.jQuery(".page").hide();
} else {
django.jQuery(".page").show();
}
})
})
命名空间:
为了避免与用户提供的脚本或库发生冲突,Django 的 jQuery(版本 3.3.1)被命名为django.jQuery
.