疑問
Djangoの"Admin site"に関して、公式のドキュメントには以下の記述があります。
One of the most powerful parts of Django is the automatic admin interface. It reads metadata from your models to provide a quick, model-centric interface where trusted users can manage content on your site. The admin’s recommended use is limited to an organization’s internal management tool. It’s not intended for building your entire front end around.
Djangoの最も強力な部分の1つは、自動管理インターフェースです。モデルからメタデータを読み取り、信頼できるユーザーがサイトのコンテンツを管理できる、モデル中心の迅速なインターフェイスを提供します。管理者が推奨する使用法は、組織の内部管理ツールに限定されています。フロントエンド全体を構築するためのものではありません。
Webでは上記を引用して「管理サイトはエンドユーザ向けに公開してはならない」といったような説明をしている記事もいくつか見られるのですが、納得感あるデメリットを示しているレビューを見つけることはできませんでした。
そこで以下の2点質問させてください。
質問1.
この「管理者が推奨する使用法は、組織の内部管理ツールに限定されています。フロントエンド全体を構築するためのものではありません。」というのは、どういった理由で推奨していないのでしょうか。
よければ理由と合わせて、この「推奨しない」の温度感が
- 禁止 (python manage.py runserverで本番運用をするな!のレベルのニュアンス)
- 非推奨 (条件付では使ってもいいが、基本は使うな、のレベルのニュアンス)
- おススメしない (contlib.authのユーザモデルをそのまま使わずにCustom userモデルを作ったほうがいいよ、のレベルのニュアンス)
でいうどれくらいの感覚なのかも合わせて教えてください。
質問2.
管理画面をエンドユーザに公開しているようなサービスもあったりするのでしょうか。
※「なぜ推奨していないのか?」の理由が純粋に知りたいです。「公式が推奨していないと書いているのだからするな」という意見はもっともですが、そういった回答は求めていません。