diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2013-02-19 10:17:59 +0000 |
---|---|---|
committer | Paul Eggleton <paul.eggleton@linux.intel.com> | 2013-02-19 12:02:04 +0000 |
commit | 05ceb1748781a8190cf99bc88990dcba1dbd4ec9 (patch) | |
tree | 535de25ea5b427fd8dea4aacdca4c1fa74327735 /layerindex/admin.py | |
parent | df6a33967e4754a103fbd24d3ee30495b6df32cc (diff) | |
download | openembedded-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.py | 27 |
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) |