我有一个需要向更多管理员开放的管理站点。
目前我的模型看起来像
class YouTube(models.Model):
name = models.CharField(max_length=100)
credit_card_number = models.CharField(max_length=100)
管理站点框架中有没有办法让它只有超级用户才能看到信用卡号?在管理站点框架中,我只能看到添加、编辑、删除的能力。
我有一个需要向更多管理员开放的管理站点。
目前我的模型看起来像
class YouTube(models.Model):
name = models.CharField(max_length=100)
credit_card_number = models.CharField(max_length=100)
管理站点框架中有没有办法让它只有超级用户才能看到信用卡号?在管理站点框架中,我只能看到添加、编辑、删除的能力。
创建方法YouTube.get_cc_root_only,您将在其中检查用户是否为 root,并在 YouTubeAdmin 类(list_display)中使用它
更新:
class XyzAdmin(admin.ModelAdmin):
def get_cc_root_only(self, obj):
if self.username == "admin":
return "CC"
return "XXX"
def changelist_view(self, request, extra_context = None):
self.username = request.user.username
return super(XyzAdmin,self).changelist_view(request, extra_context = extra_context)
list_display = ("name", "get_cc_root_only")