Assignment / reviews /admin.py
Assignment User
Initial commit: Django REST API for place reviews
877587b
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin as BaseUserAdmin
from .models import User, Place, Review
@admin.register(User)
class UserAdmin(BaseUserAdmin):
"""Admin interface for custom User model."""
list_display = ['phone', 'name', 'is_staff', 'date_joined']
search_fields = ['phone', 'name']
ordering = ['-date_joined']
fieldsets = (
(None, {'fields': ('phone', 'password')}),
('Personal info', {'fields': ('name', 'email')}),
('Permissions', {'fields': ('is_active', 'is_staff', 'is_superuser', 'groups', 'user_permissions')}),
('Important dates', {'fields': ('last_login', 'date_joined')}),
)
add_fieldsets = (
(None, {
'classes': ('wide',),
'fields': ('phone', 'name', 'password1', 'password2'),
}),
)
@admin.register(Place)
class PlaceAdmin(admin.ModelAdmin):
"""Admin interface for Place model."""
list_display = ['name', 'address', 'average_rating', 'created_at']
search_fields = ['name', 'address']
list_filter = ['created_at']
ordering = ['-created_at']
@admin.register(Review)
class ReviewAdmin(admin.ModelAdmin):
"""Admin interface for Review model."""
list_display = ['user', 'place', 'rating', 'created_at']
search_fields = ['user__name', 'place__name', 'text']
list_filter = ['rating', 'created_at']
ordering = ['-created_at']