django-admin-decorators

Extra decorators for Django admin
Download

django-admin-decorators Ranking & Summary

Advertisement

  • Rating:
  • License:
  • MIT/X Consortium Lic...
  • Price:
  • FREE
  • Publisher Name:
  • Mikhail Korobov
  • Publisher web site:
  • http://bitbucket.org/kmike/

django-admin-decorators Tags


django-admin-decorators Description

Django's admin accepts callables for list_display and readonly_fields. In order to customize these callables (e.g. annotate them with a description) django requires developer to set an attribute on a callable (e.g. 'short_description'). django-admin-decorators is a simple approach and it works.But it is easy to make a typo or to forget what attribute should be set on a callable because there is no autocompletion.This app provides an alternative (decorator) syntax for that + a couple of other decorators useful for customizing django admin.Installationpip install django-admin-decoratorsUsagefrom django.contrib import adminfrom admin_decorators import (short_description, limit_width, boolean, apply_filter, order_field, allow_tags)from myapp.models import MyModelclass MyModelAdmin(admin.ModelAdmin): list_display = 'name', '_text', 'has_huge_text', 'html_url' readonly_fields = @short_description('The text limited to 100 chars') @order_field('text') @limit_width(100) def _text(self, obj): return obj.text @boolean @short_description('The text is huge') def has_huge_text(self, obj): return len(obj.text) > 100 @short_description('link') @order_field('url') @allow_tags @apply_filter('urlize') def html_url(self, obj): return obj.urladmin.site.register(MyModel, MyModelAdmin)Note that allow_tags decorator marks result as safe so it will be html both in list_display and readonly_fields.Take a look at source code for more decorators.DevelopmentDevelopment happens at bitbucket and github.If you've found a bug or have an idea for a new decorator feel free to open a ticket and/or send a pull request.Product's homepage


django-admin-decorators Related Software