Django's admin accepteert callables voor list_display en readonly_fields. Om deze callables passen (bijv annoteren met een beschrijving) django vereist ontwikkelaar een attribuut op opvraagbare (bijvoorbeeld 'short_description) ingesteld. django-admin-decorateurs is een eenvoudige benadering en het werkt.
Maar het is makkelijk om een typefout maken of om te vergeten wat attribuut dient te worden ingesteld op een opvraagbare omdat er geen automatisch aanvullen.
Deze app biedt een alternatief (decorateur) syntaxis voor dat + een paar andere decorateurs nuttig zijn voor het aanpassen van Django admin.
installatie
pip django-admin-decorateurs installeren
Gebruik
van django.contrib import admin
uit admin_decorators import (short_description, limit_width, boolean,
& Nbsp; apply_filter, order_field, allow_tags)
van myapp.models import MyModel
klasse MyModelAdmin (admin.ModelAdmin):
& Nbsp; list_display = 'naam', '_text', 'has_huge_text', 'html_url'
& Nbsp; readonly_fields = ['naam', 'html_url']
& Nbsp;short_description ('De tekst beperkt tot 100 tekens)
& Nbsp;order_field ('tekst')
& Nbsp;limit_width (100)
& Nbsp; def _text (zelf, obj):
& Nbsp; terug obj.text
& Nbsp;boolean
& Nbsp;short_description ('De tekst is enorm')
& Nbsp; def has_huge_text (zelf, obj):
& Nbsp; terug len (obj.text)> 100
& Nbsp;short_description ("link")
& Nbsp;order_field ('url')
& Nbsp;allow_tags
& Nbsp;apply_filter ('urlize')
& Nbsp; def html_url (zelf, obj):
& Nbsp; terug obj.url
admin.site.register (MyModel, MyModelAdmin)
Merk op dat allow_tags decorateur merken resulteren zo veilig dus het HTML wordt zowel in list_display en readonly_fields.
Neem een kijkje op de broncode voor meer decorateurs.
Ontwikkeling
Ontwikkeling gebeurt op BitBucket en GitHub.
. Als je een bug hebt gevonden of een idee voor een nieuwe decorateur voel je vrij om een ticket te openen en / of stuur een pull verzoek
Eisen
< p>- Python
- Django
Reacties niet gevonden