Django で複数の HTML ページを効率的に追加する
P粉356128676
P粉356128676 2023-07-20 18:47:03
0
1
611

私は、米国の州ごとに個別の HTML ページを作成する単純な Django アプリケーションを作成しました。各州のページはbase.htmlを拡張していますが、内容は異なります。

URL は URLs.py ファイルで宣言され、ページのレンダリングは views.py でマップされます。

views.py ファイルと urls.py ファイルで各ページの名前を明示的に宣言せずに、ページ数をスケーラブルに (おそらくは数百、さらには数千まで) 増やす方法を知りたいです。

これを正しく実装するにはどうすればよいですか?

HTML ファイル

リーリー

Views.py

リーリー

URLs.py

リーリー


P粉356128676
P粉356128676

全員に返信(1)
P粉596161915

views.py および urls.py ファイルで各ページを明示的に宣言せずに、異なる名前を持つ数百または数千の HTML ページを Django に効率的に追加するには、動的 URL ルーティングとユニバーサル ビューを使用できます。正しい方法は次のとおりです:

urls.py ファイルを変更します:

リーリー

views.py ファイルを変更します:

リーリー

このセットアップでは、urls.py で動的 URL パターン slug:state_slug/ を使用しています。これは、任意の状態の名前を取得し、それを StateDetailView に渡します。 StateDetailView は、URL から取得した state_slug に基づいて動的テンプレートをレンダリングする汎用のクラスベースのビューです。

この実装を使用すると、views.py または urls.py ファイルを変更せずに、各州の新しい HTML ページを簡単に追加できます。各状態に対応する HTML ファイルを必ず作成し、命名規則に従ってください。後は Django が処理します。たとえば、「delaware」という名前の新しい州を追加した場合は、「states_info_app」テンプレート フォルダーに「delaware.html」という名前の新しい HTML ファイルを作成するだけです。このファイルには、URL「yourdomain.com/delaware」/」を介してアクセスされます。アクセス。このアプローチにより、ビューや URL 構成を手動で調整することなく、アプリケーションを拡張して多数の状態ページを処理できるようになります。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート