モデルの関連付けなしで管理者にカスタムページを追加しようとしています。モデルなしでdjangoの管理者にカスタムページを追加します。
これはこれまで私が達成したものです。
class MyCustomAdmin(AdminSite):
def get_urls(self):
from django.conf.urls import url
urls = super(MyCustomAdmin, self).get_urls()
urls += [
url(r'^my_custom_view/$', self.admin_view(MyCustomView.as_view()))
]
return urls
class MyCustomView(View):
template_name = 'admin/myapp/views/my_custom_template.html'
def get(self, request):
return render(request, self.template_name, {})
def post(self, request):
# Do something
pass
admin_site = MyCustomAdmin()
admin_site.register(MyModel1)
admin_site.register(MyModel2)
# etc...
これは、実際に働いているが、問題は、このソリューションで、私はDjangoの管理インタフェース(アカウント、認証、socialaccounts、サイト)からいくつかのアプリを失うということです。
ご返信ありがとうございます。私はドキュメントを知っていて、django.contrib.adminをINSTALLED_APPSに組み込むことで、自動検出がまだ有効であると思っていました。私はメソッドget_urls()をオーバーライドするソリューションが本当に好きではなく、すべてのサードパーティアプリケーションを手動で含めることを好みます。これを行う方法に関する提案はありますか? – Pietro