当数据为空时隐藏视图
在 admin.py 中
# 重写获取表单的方法
def get_form(self, request, obj=None, **kwargs):
form = super(NewsArticleAdmin, self).get_form(request, obj, **kwargs)
# 获取所有的虚拟BU 对象
choices = FictitiousBu.objects.all()
choices_len = len(choices)
# 如果没有虚拟BU对象 则隐藏 虚拟BU 的视图
if choices_len == 0:
if 'fictitious_bu' in form.base_fields:
form.base_fields.pop('fictitious_bu')
return form