新しい仕事と巨大な django プロジェクト (15 個のアプリ、30 個以上の場所) があります。そのアーキテクチャを最初から理解するのはかなり難しいです。最初に作業を簡素化するためのテクニックはありますか? 必要なフォームやビューがどこにあるのか理解するのが難しい場合もあります...前もって。
5 に答える
この種の問題が発生したとき、私はノートブックを開いて次のように答えます。
1.インフラストラクチャ
- サーバー構成、OSなど
- データベースタイプ(mysql、postgres、nosql)を確認してください
- 外部API(Facebook Connectなど)
2.バックエンド
- 簡単な説明を書く
- ユーザーからの入力/出力を書き込みます(徹底するようにしてください。どのフィールドが必須で、どのフィールドが必須ではないか)。
- FKと他のアプリとの関係を書いてください(そしてその理由)
- アプリが使用している各プラグインを一覧表示します。そして、どのような目的のために。たとえば、Railsでは次のように記述します。'gemwill_paginate-ゲストブックアプリの結果を複数のページに表示するには'
3.フロントエンド
- JSフレームワークをチェックしてください
- メインのスタイルシートファイルを確認します(テンプレート用)
- 新しいテンプレートベースのページを作成するためのメインのhtml/haml(etc)ファイル。
あなたがそれをし終えたら。あなたははるかに準備ができており、アプリの開発/デバッグをより深く行うことができると思います。幸運を。
このhttp://packages.python.org/django-extensions/graph_models.htmlを使用してください
モデルから関係図を生成して、モデルが互いにどのように関連しているかを視覚的に確認できるようにします。これはあなたにアプリについての素晴らしいアイデアを与えるでしょう
プロジェクトを複製して、無限に台無しにできるようにします。
次に、コードの削減を開始します。「ここでこの機能を削除するとどうなりますか?
django デバッグ ツールバーも取得します。
https://github.com/django-debug-toolbar/django-debug-toolbar
優れたターミナル デバッガーもゴールデンです。たくさんあります。以下に例を示します。
https://github.com/tomchristie/django-pdb
これにより、コードを停止し、実行時にパラメーターを挿入および変更することさえできます。C の GDB と同じです。
1) 最初からサイトをインストールしてみてください。サイトを実行するために必要な外部アプリが見つかります。
2) リバース エンジニアリング。サイトをブラウズして、そのページに何かを変更するために何をしなければならないかを調べてみてください。URL から始めて、urls.py を調べ、ビューを読み、モデルを確認します。他のプロセスへのヒントはありますか?
3) 理解できないことはすべて書き留めて、後で参照できるように回答を文書化してください。
FireFoxを使用している場合は、FireBugをインストールできます。たとえば、ajaxフォームを送信すると、このフォームデータを処理するコントローラーを簡単に見つけることができた後、どのURLでリクエストが送信されるかを確認できます。Chromeでは、このユーティリティはデフォルトで埋め込まれ、F12キーで呼び出します。