問題がありますが、django プロジェクトを整理する最善の方法がわかりません。2 種類のトーナメントで同じモデルを使用しています (これは一例です)。
- トーナメント(タイプノックアウトまたはリーグ)
- マッチ
トーナメントがノックアウトの場合は、最初のラウンドのすべての試合を作成する必要がありますが、リーグの場合は、すべてのリーグのすべての試合を作成する必要があります。
ノックアウトの管理ページはノックアウト ツリーであり、リーグは結果と分類のテーブルである必要があります。
コードを整理するにはどうすればよいですか?
現在、ノックアウト アプリケーションとリーグ アプリケーションがあり、ユーザーが「管理者」を選択すると、トーナメント タイプに応じてアプリケーションにリダイレクトされます。
別の問題は、ユーザーがトーナメントを作成または変更するとき、ユーザーがチームを追加または削除するときなどに何らかのプロセスを実行する必要があることですが、同じ問題です: タイプがノックアウトの場合、X プロセスを実行する必要がありますが、リーグ実行 Y の場合プロセス。
新しいタイプのトーナメントに向けたスケーラブルなソリューションが必要ですが、どのアーキテクチャ/組織が最適かわかりません。