xadmin choices 根据身份不同进行显示choices 的内容 formfield_for_dbfield

class AddConferenceDisplay(object):    
    def formfield_for_dbfield(self, db_field, **kwargs):
        if not self.request.user.is_superuser and db_field.name=='meeting':
            kwargs['choices'] = (
                (1, '高端会议(预报名,有审核,报名或签到时调研)'),
                (2, '讲座(预报名,无审核,签到时调研抽奖)'),
            )
        attrs = self.get_field_attrs(db_field, **kwargs)
        return db_field.formfield(**dict(attrs, **kwargs))

修改效果如下

xadmin choices 根据身份不同进行显示choices 的内容 formfield_for_dbfield_第1张图片

你可能感兴趣的:(Django,xadmin)