いくつかのDjangoの開発経験

一部の開発者Djangoの経験
ベース

分離された開発環境をvirtualenvの使用

、トリック主に、プロジェクトの依存関係を管理する依存モジュールおよびバージョンを保存するためにピップフリーズ> requirements.txtを使用ピップ使用

gitignore.ioこのサイトは.gitignoreファイル管理コードライブラリファイルを提供して使用します

パッケージングおよび配布
Dockerfileとパッケージングや出版プロジェクトドッカー、Djangoプロジェクトは、特に簡単:

パイソンFROM:3.5
COPY ./requirements.txt / srcの
WORKDIR / srcの
ピップ-r requirements.txtのインストールを実行
COPYを。/ srcに
EXPOSE
CMD uwsgi --http: - WSGI-ファイル<パス/に/ wsgi.py>

このテンプレートは、テイクDjangoプロジェクトのDockerfile 80%であることができます。

コンフィギュレーションロギング
ドッカーと今、彼は標準出力に直接書き込まれたログファイルをあきらめました。

settings.py

...

} uwsgi Webアプリケーションの新バージョンは、内部標準出力にログ出力を収集してきた可能性があります。あなたは、収集したログを管理する必要がある場合は、その後、ドッカーロギングツールによって収集され、収集した直接ドッカーコンテナのログをすることができます。























自動テスト
、それは純粋なバックエンドのプロジェクトなので、エンジニアは自動化された独自のコードをテストすることによって検出することができます。ジャンゴ自体がテストのために良いサポートを提供し、あなたはsqliteの通じテスト・データベースを構築することができ、他のテストシステムへの依存を増加させない、メモリベースのキャッシュがあります。より効率的に開発します。

自動化されたテストコードに加えて、だけでなく、統計的なテスト・カバレッジに書き込みます。現在、我々は、イスタンブールの簡単なのNode.jsはありません正直に言うと、このツールcoverage.pyを使用している、レポート出力は、詳細なイスタンブールを読み取ることは容易ではありません。しかし、「デッドコード」をチェックするのに十分です。

HTTPのテストコード
いくつかのサードパーティ製システムのプロジェクトは、このようなマイクロチャネルの認証、支払い、テキストメッセージや他の一般的なような、よりドッキングを、必要とする、他のシステムかもしれない縦型の事業領域があります。ドッキング・インターフェイス・コードのこの部分はまた、コードがエラーに非常にやすいスクリプト言語、等の全てのPythonの後、テスト中に組み込まれるべきです。

これは、一般的にモジュールの応答モックhttpリクエストです。

定期的なタスクの
いくつかのDjangoのプロジェクトがあり、いくつかの定期的なタスクを実行する必要があります。まず第一に、全く組み込まれていない-でのLinuxのcrontab。主な問題は、多分いつか忘れて、この設定を入れ、メンテナンスのコストが高いことです。

私たちは、Djangoのコマンド機能によって、今の方法である、タイミングタスクは、コマンドにパッケージ化されます。スケジューラは、内部にこのコマンドを実行します。このように:

輸入スケジュール
django.core.management.base輸入BaseCommandのから
クラスコマンド(BaseCommand):
デフハンドル(自己、* argsを、** kwargsから):
schedule.every(45).minutes.do(do_this)
schedule.every()。 day.at('04:00' )(do_that)を行う。
しばらく真:
schedule.run_pending()
time.sleep(1)

おすすめ

転載: www.cnblogs.com/bbiu/p/11265782.html