2012-02-17 16 views
5

Używam aplikacji innej firmy w mojej aplikacji webowej django. Ale chcę dostosować widok administratora dla jednego z modeli w aplikacji innej firmy. Dostosowanie to więcej niż zmiana szablonu change_list.html, tj. Muszę dodać kod do rozmowy z zewnętrznym serwisem internetowym itp.Gdzie mogę zmodyfikować kod widoku administratora dla aplikacji innej firmy?

Jednak nie chcę modyfikować aplikacji innej firmy. Zamiast tego chcę go zastąpić. Jak przesłonić ModelAdmin dla modelu pochodzącego z aplikacji innej firmy?

Odpowiedz

17

To powinno Ci zacząć:

from django.contrib import admin 
from thirdpartyapp.models import ThirdPartyModel 
from thirdpartyapp.admin import ThirdPartyAdmin 

class CustomThirdPartyAdmin(ThirdPartyAdmin): 
    pass 


admin.site.unregister(ThirdPartyModel) 
admin.site.register(ThirdPartyModel, CustomThirdPartyAdmin) 

Używam tego często dostosować UserAdmin as shown in this answer.

+1

Musisz wyrejestrować model, a nie jego administratora. – MechanTOurS

+1

Masz rację. Właśnie to naprawiłem. –

+1

Gdzie powinien być ten kod? W nowym folderze w głównym folderze projektu z nazwą "thirdpartyapp'? – kahlo

Powiązane problemy