github.com/blystad/deis@v0.11.0/controller/api/admin.py (about) 1 # -*- coding: utf-8 -*- 2 3 """ 4 Django admin app configuration for Deis API models. 5 """ 6 7 from __future__ import unicode_literals 8 9 from django.contrib import admin 10 from guardian.admin import GuardedModelAdmin 11 12 from .models import App 13 from .models import Build 14 from .models import Cluster 15 from .models import Config 16 from .models import Container 17 from .models import Domain 18 from .models import Key 19 from .models import Release 20 21 22 class AppAdmin(GuardedModelAdmin): 23 """Set presentation options for :class:`~api.models.App` models 24 in the Django admin. 25 """ 26 date_hierarchy = 'created' 27 list_display = ('id', 'owner', 'cluster') 28 list_filter = ('owner', 'cluster') 29 admin.site.register(App, AppAdmin) 30 31 32 class BuildAdmin(admin.ModelAdmin): 33 """Set presentation options for :class:`~api.models.Build` models 34 in the Django admin. 35 """ 36 date_hierarchy = 'created' 37 list_display = ('created', 'owner', 'app') 38 list_filter = ('owner', 'app') 39 admin.site.register(Build, BuildAdmin) 40 41 42 class ClusterAdmin(admin.ModelAdmin): 43 """Set presentation options for :class:`~api.models.Cluster` models 44 in the Django admin. 45 """ 46 date_hierarchy = 'created' 47 list_display = ('id', 'owner', 'domain') 48 list_filter = ('owner',) 49 admin.site.register(Cluster, ClusterAdmin) 50 51 52 class ConfigAdmin(admin.ModelAdmin): 53 """Set presentation options for :class:`~api.models.Config` models 54 in the Django admin. 55 """ 56 date_hierarchy = 'created' 57 list_display = ('created', 'owner', 'app') 58 list_filter = ('owner', 'app') 59 admin.site.register(Config, ConfigAdmin) 60 61 62 class ContainerAdmin(admin.ModelAdmin): 63 """Set presentation options for :class:`~api.models.Container` models 64 in the Django admin. 65 """ 66 date_hierarchy = 'created' 67 list_display = ('short_name', 'owner', 'app', 'state') 68 list_filter = ('owner', 'app', 'state') 69 admin.site.register(Container, ContainerAdmin) 70 71 72 class DomainAdmin(admin.ModelAdmin): 73 """Set presentation options for :class:`~api.models.Domain` models 74 in the Django admin. 75 """ 76 date_hierarchy = 'created' 77 list_display = ('owner', 'app', 'domain') 78 list_filter = ('owner', 'app') 79 admin.site.register(Domain, DomainAdmin) 80 81 82 class KeyAdmin(admin.ModelAdmin): 83 """Set presentation options for :class:`~api.models.Key` models 84 in the Django admin. 85 """ 86 date_hierarchy = 'created' 87 list_display = ('id', 'owner', '__str__') 88 list_filter = ('owner',) 89 admin.site.register(Key, KeyAdmin) 90 91 92 class ReleaseAdmin(admin.ModelAdmin): 93 """Set presentation options for :class:`~api.models.Release` models 94 in the Django admin. 95 """ 96 date_hierarchy = 'created' 97 list_display = ('created', 'version', 'owner', 'app') 98 list_display_links = ('created', 'version') 99 list_filter = ('owner', 'app') 100 admin.site.register(Release, ReleaseAdmin)