用于django admin的额外装饰器
项目描述
Django的admin接受用于list_display和readonly_fields的可调用对象。为了自定义这些可调用对象(例如,用描述注解它们),Django要求开发者设置可调用对象的属性(例如,“short_description”)。这是一个简单的方法,而且它有效。
但是,由于没有自动补全,很容易出现拼写错误或忘记应该设置什么属性在可调用对象上。
此应用程序提供了替代(装饰器)语法,以及一些用于自定义Django admin的有用装饰器。
安装
pip install django-admin-decorators
用法
from django.contrib import admin from admin_decorators import (short_description, limit_width, boolean, apply_filter, order_field, allow_tags) from myapp.models import MyModel class MyModelAdmin(admin.ModelAdmin): list_display = 'name', '_text', 'has_huge_text', 'html_url' readonly_fields = ['name', 'html_url'] @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.url admin.site.register(MyModel, MyModelAdmin)
注意,allow_tags装饰器将结果标记为安全,因此它将在list_display和readonly_fields中都是HTML。
查看源代码以获取更多装饰器。
开发
如果您发现了一个错误或有一个新装饰器的想法,请随意打开一个工单和/或发送一个拉取请求。
项目详情
关闭
django-admin-decorators-0.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | cdb2393fa9de145cbba91fb2cc7281ffab2e6becd294f2f19960e1711ff736bf |
|
MD5 | 2e7670f4266641444896a897b8ce2a38 |
|
BLAKE2b-256 | e5078825af3c4edd247eda5332483dd1794f8e5e7b7868d88479ecfb620a96de |