Dingo je aplikace, Django, který rozšiřuje Django správce, aby umožnil snadné vytváření dalších názorů pro modelové třídy a instance. dingo také umožňuje přizpůsobit Správce aplikací třetích stran, a to bez subclassing nebo modifikace původní zdrojový strom.
Použití
Chcete-li použít psa dingo, ujistěte se, že je na cestě Python, a přidejte ji do INSTALLED_APPS nastavení v settings.py. Všimněte si, že dingo musí být nainstalován před django.contrib.admin, protože nahradí výchozí AdminSite se ten, který bude přístroj se ModelAdmin třídy registrováno.
Modely vs. Objekty
dingo lze použít k registraci výhled pro modely nebo objekty. Pohledy registrovaných pro modely nejsou specifické pro instanci modelu; mohou být myšlenka jak podobný Django admin akce a jedním [potenciálně] prázdné queryset. Pohledy instance pracují na případech jednotlivých modelových; můžete si je představit jako podobný admin akce, které operují na jediném objektu namísto queryset.
pohledy Dingo se liší od admin akcí v několika jemných způsobů. Nejdůležitější rozdíl je, že mohou být vstřikován do aplikací třetích stran wihthout sub-kvalifikovala nebo úpravy kódu aplikace. pohledy Dingo mají také jiné uživatelské rozhraní ve výchozím nastavení. dingo obsahuje šablony výměna admin, které ukazují Dingo názory jsou tlačítka v pravém horním části seznamu změn a měnit názory formuláře.
Přidávání Zobrazení
Chcete-li používat dingo přidat modelu nebo objekt názory na admin vašeho modelu, můžete definovat buď jako funkce nebo metody na ModelAdmin.
Například, pro definování zobrazení jako funkci:
Dovozní dingo
Dovozní dingo_test.models
@ Dingo.object_view (dingo_test.models.RstDocument)
@ Dingo.short_description ("Render")
def render (model_admin, požadavek, object_id):
& Nbsp; od django.shortcuts import přesměrování
& Nbsp; dokument = dingo_test.mdoels.RstDocument.objects.get (id = object_id)
& Nbsp; návrat Response ()
Stejný názor, může být také způsob na ModelAdmin:
třída RstDocumentAdmin (ModelAdmin):
& Nbsp; @ dingo.object_view (dingo_test.models.RstDocument)
& Nbsp; @ dingo.short_description ("Render")
& Nbsp; def render (self, požadavek, object_id):
& Nbsp; průchod
Všimněte si, že použití short_description dekoratér definuje označení používané v uživatelském rozhraní admin, a je volitelná v tomto případě. Není-li popis k dispozici, bude dingo formátovat funkce nebo metody název, podobně, jak Django formáty výchozí verbose názvy pro modely.
Přidávání pohledů na Aplikace třetích stran
Tak dlouho, jak je uvedena v dingo INSTALLED_APPS před django.contrib.admin, příklad funkce založené na výše bude pracovat, jak je požadováno. Všimněte si, že kód musí být dovezeny, aby zajistily, že zápis nastane řádně
Vlastnosti :.
- snadno vytvářet nové pohledy pro vaše Model správce, a to buď na modelu nebo objektu úrovni.
- Aplikujte úpravy do admin prohlášení aplikace třetí strany bez úpravy původního kódu.
Požadavky na :
- Python
Komentáře nebyl nalezen