2

私は Web 開発の世界は初めてです。つまり、javaScript/CSS は初めてです。現在、Python Django を使用して Web システムを構築しています。Django admin に「タブ付き」インターフェースを追加するための出発点として、いくつかのヒントを教えていただけないでしょうか?

たとえば、マスター テーブルには 3 つの詳細テーブルがあり、マスター テーブルの「編集」ページでその 3 つの詳細テーブルを編集するために 3 つの異なるタブを使用したいと考えています。前もって感謝します!

4

1 に答える 1

3

まず、これを JavaScript で解決するか、テンプレートをオーバーライドして解決するかを決定する必要があります。これらはどちらも、要件に応じて適切なソリューションです。

これを行う簡単な方法の1 つであり、これをテストするための最初のアプローチは、すべてのタブを異なるフィールドセットに配置し、後でそれらを表示/非表示にするタブ付きインターフェイスを作成することです。長所は、それを行うのが非常に簡単な方法であることです。短所は、javascript を使用して多くの DOM に変更しなければ、あまり柔軟性がないことです。

タブを変更すると、ユーザーが何かを変更したことを忘れて保存せずに離れる可能性があることを考慮する必要があります。

別のアプローチは、その特定のモデルの change_form テンプレートをオーバーライドし、新しいタブを同じ URL にリンクしますが、異なる GET パラメータを使用することです。.../mymodel/?active_tab=2 テンプレート/ビューでこれを確認し、適切なコンテンツをレンダリングします。この方法の最も顕著な利点は、ユーザーが JavaScript を有効にする必要がないことです。

django-cms どのようにそれを行うかを確認できます。異なる言語間で変更するための非常に優れたタブ付きインターフェイスがあります。何かを始める方法を決める最良の方法の 1 つは、他の人がそれをどのように行ったかを調べることです。ソースコードをブラウジングしてインストールし、実験を始めましょう!

お役に立てれば。

編集

別のアプローチ例はこちらです。完全な django-cms コードよりも、添付されているパッチを確認する方が簡単です。乾杯。

于 2010-05-07T11:54:50.473 に答える