Django Admin で、is_active = False なユーザーを表示しなくする ( User の Admin を別のものに差し替える )
2022-11-16 00:19 (3 years ago)

UserAdmin で、is_actiev = True なユーザーしか表示させなくします。
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
class ReplacedUserAdmin(UserAdmin):
list_display = (
'id',
'email',
'username',
'last_name',
'first_name',
'date_joined',
'is_staff',
'is_superuser',
)
ordering = ('-is_active', '-id',)
def get_queryset(self, request):
return super().get_queryset(request).filter(is_active=True)
# UserAdminを置き換える。
admin.site.unregister(User)
admin.site.register(User, ReplacedUserAdmin)
@admin.register デコレータを使う場合は、コードの評価順的にうまくいきません。
admin.site.unregister(User)
admin.site.register(User, ReplacedUserAdmin)
↑この2行を並べるように書いてください。
まだ評価がありません
著者は、アプリケーション開発会社 Cyberneura を運営しています。
開発相談をお待ちしています。
開発相談をお待ちしています。