首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django admin - 如何隐藏用户编辑中的某些字段?

在Django Admin中,隐藏用户编辑中的某些字段可以通过以下方法实现:

  1. 在模型管理类中自定义表单

在admin.py文件中,创建一个自定义的表单类,继承自Django的ModelForm类,并在其中定义需要显示或隐藏的字段。然后,在模型管理类中使用该表单类替换默认的表单类。

代码语言:python
复制
from django import forms
from django.contrib import admin
from .models import YourModel

class CustomModelForm(forms.ModelForm):
    class Meta:
        model = YourModel
        fields = ['field1', 'field2', 'field3']
        widgets = {
            'field_to_hide': forms.HiddenInput(),
        }

class CustomModelAdmin(admin.ModelAdmin):
    form = CustomModelForm

admin.site.register(YourModel, CustomModelAdmin)
  1. 使用exclude属性

在模型管理类中,可以使用exclude属性来排除不需要显示的字段。

代码语言:python
复制
from django.contrib import admin
from .models import YourModel

class CustomModelAdmin(admin.ModelAdmin):
    exclude = ['field_to_hide']

admin.site.register(YourModel, CustomModelAdmin)
  1. 使用fieldsets属性

通过fieldsets属性可以更细致地控制表单中字段的显示。

代码语言:python
复制
from django.contrib import admin
from .models import YourModel

class CustomModelAdmin(admin.ModelAdmin):
    fieldsets = [
        ('Basic Information', {'fields': ['field1', 'field2']}),
        ('Advanced Information', {'fields': ['field3']}),
    ]

admin.site.register(YourModel, CustomModelAdmin)

这样,在Django Admin中编辑用户时,指定的字段就会被隐藏。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券