Django'nın yönetici list_display ve readonly_fields için callables kabul eder. (Örneğin bir bilgi ile bunları açıklama) Bu callables özelleştirmek için Django (örneğin 'SHORT_DESCRIPTION') bir çağrılabilir bir özniteliği ayarlamak için geliştirici gerektirir. Django-admin-dekoratör basit bir yaklaşımdır ve çalışıyor.
Ama bir yazım hatası yapmak veya otomatik tamamlama olmadığından bir çağrılabilir ayarlanmış olmalıdır hangi nitelik unutmak kolaydır.
Bu uygulama bunun için bir alternatif (dekoratör) sözdizimi + Django yönetici özelleştirme için yararlı diğer dekoratörler bir çift sağlar.
Kurulum
Django-admin-dekoratörler yüklemek pip
Kullanım
django.contrib ithalat yönetici itibaren
admin_decorators ithalat (SHORT_DESCRIPTION, limit_width, boolean gelen,
& Nbsp; apply_filter, order_field, allow_tags)
myapp.models ithalat MyModel gelen
sınıf MyModelAdmin (admin.ModelAdmin):
& Nbsp; list_display = 'adı', '_text', 'has_huge_text', 'html_url'
& Nbsp; readonly_fields = ['isim', 'html_url']
& Nbsp;short_description ('metin 100 karakter ile sınırlı')
& Nbsp;order_field ('text')
& Nbsp;limit_width (100)
& Nbsp; def _text (öz, obj):
& Nbsp; obj.text dönüş
& Nbsp;boolean
& Nbsp;short_description ('metin çok büyük')
& Nbsp; def has_huge_text (öz, obj):
& Nbsp; len (obj.text)> 100 iade
& Nbsp;short_description ('bağlantı')
& Nbsp;order_field ('url')
& Nbsp;allow_tags
& Nbsp;apply_filter ('urlize')
& Nbsp; def html_url (öz, obj):
& Nbsp; obj.url dönüş
admin.site.register (MyModel, MyModelAdmin)
Allow_tags dekoratör işaretleri bu list_display ve readonly_fields hem html olacak şekilde güvenli yol olduğunu unutmayın.
Daha fazla dekoratörler için kaynak koduna bir göz atın.
Geliştirme
Kalkınma bitbucket ve github de olur.
. Eğer bir hata buldum ya da çekme isteği, bir bilet açmak ve / veya göndermek için çekinmeyin, yeni bir dekoratör için bir fikrim var ettiyseniz
Gereksinimler :
< p>- Python
- Django
Yorum Bulunamadı