aboutsummaryrefslogtreecommitdiffstats
path: root/layerindex/admin.py
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2013-02-19 10:17:59 +0000
committerPaul Eggleton <paul.eggleton@linux.intel.com>2013-02-19 12:02:04 +0000
commit05ceb1748781a8190cf99bc88990dcba1dbd4ec9 (patch)
tree535de25ea5b427fd8dea4aacdca4c1fa74327735 /layerindex/admin.py
parentdf6a33967e4754a103fbd24d3ee30495b6df32cc (diff)
downloadopenembedded-core-contrib-05ceb1748781a8190cf99bc88990dcba1dbd4ec9.tar.gz
Admin interface improvements
* Set custom title for admin pages * Use reasonable field widths on editing pages * Allow filtering and searching by useful fields * Disable editing of recipe records * Disable editing of layer fields set by the update script * Show "Layers" instead of "Layer items" for layers * Show "Layer dependencies" instead of "Layer dependencys" * Show layer name in maintainers listing Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Diffstat (limited to 'layerindex/admin.py')
-rw-r--r--layerindex/admin.py27
1 files changed, 22 insertions, 5 deletions
diff --git a/layerindex/admin.py b/layerindex/admin.py
index 0890ff20e7..18e51ab768 100644
--- a/layerindex/admin.py
+++ b/layerindex/admin.py
@@ -7,21 +7,38 @@
from layerindex.models import *
from django.contrib import admin
from reversion_compare.admin import CompareVersionAdmin
+from django.forms import TextInput
class LayerItemAdmin(CompareVersionAdmin):
- """ Admin settings here """
+ list_filter = ['status', 'layer_type']
+ save_as = True
+ search_fields = ['name', 'summary']
+ readonly_fields = ['vcs_last_fetch', 'vcs_last_rev', 'vcs_last_commit']
+ formfield_overrides = {
+ models.URLField: {'widget': TextInput(attrs={'size':'100'})},
+ models.CharField: {'widget': TextInput(attrs={'size':'100'})},
+ }
class LayerMaintainerAdmin(CompareVersionAdmin):
- """ Admin settings here """
+ list_filter = ['status', 'layer__name']
class LayerDependencyAdmin(CompareVersionAdmin):
- """ Admin settings here """
+ list_filter = ['layer__name']
class LayerNoteAdmin(CompareVersionAdmin):
- """ Admin settings here """
+ list_filter = ['layer__name']
+
+class RecipeAdmin(admin.ModelAdmin):
+ search_fields = ['filename', 'pn']
+ list_filter = ['layer__name']
+ readonly_fields = Recipe._meta.get_all_field_names()
+ def has_add_permission(self, request, obj=None):
+ return False
+ def has_delete_permission(self, request, obj=None):
+ return False
admin.site.register(LayerItem, LayerItemAdmin)
admin.site.register(LayerMaintainer, LayerMaintainerAdmin)
admin.site.register(LayerDependency, LayerDependencyAdmin)
admin.site.register(LayerNote, LayerNoteAdmin)
-admin.site.register(Recipe)
+admin.site.register(Recipe, RecipeAdmin)