3

もちろん、ローカルで開発している私の小さなdjangoプロジェクトでかなり速くなっています。しかし、私はこれまでdjangoを使ったことがなかったので、それをアップロードして本番サーバーでテストすることが何を意味するのかわかりません。そして、私は初期のリリースをライブでテストしたいと思っているので、非常に興味があります。

このドキュメントがあることは知っていますが、これは本当に役立つと思います:http: //djangobook.com/en/2.0/chapter12/

しかし、展開前、展開中、展開後に考慮すべき詳細はありますか?アドバイスやベストプラクティスはありますか?

ありがとう。

4

4 に答える 4

6

開発/テスト環境をデプロイメント環境と可能な限り一致させます。これは、SQLiteと組み込みサーバーの代わりにPostgreSQLとmod_wsgiなどを使用することを意味します。このソフトウェアは無料なので、手に入れることができない理由はありません。

于 2010-03-12T16:31:50.153 に答える
2

ドメインのサブディレクトリでサイトを提供すると、問題が発生する可能性があります。絶対URLを手動で書き込むのではなく、代わりにurlタグを使用してください。

データベースの初期データに依存する場合は、フィクスチャを使用してください。

サーバーを複数のサイトで使用する場合は、他のサイトとの依存関係の競合を回避するために、サイトをVirtualenvでパッケージ化することを検討してください。

また、予期しない事態を避けるために、開発サーバーと本番サーバーで同じデータベースシステムを使用する必要があります。

于 2010-03-12T16:38:32.013 に答える
2

サウスのようなものを使用してデータベース移行の問題を取り除き、プロジェクトがかなり複雑な場合(またはこれらのツールを学ぶ時間があれば)、ビルドアウトファブリックのようなものを展開用に検討してください。これらは簡単に再現可能なスクリプト展開を可能にします。

于 2010-03-12T16:43:09.180 に答える
1

データベースモデルの変更には多くのことがかかっていると思います。Djangoはsyncdbを使用して新しい列を追加するか、それを行うためのスクリプトを生成できますが、列は削除されず、データベースから外部キー制約が適用されなくなっても削除されるとは思いません。

したがって、データベースの移行はスクリプト化して行うのが最適であり、本番データベースのコピーまたは本番データによく似たデータセット(もちろん同じスキーマ)でテストすることができます。

于 2010-03-12T16:36:27.523 に答える