3

Udacity、Code Academy、Google University を通じて Python を学んでいます。私は今、Django の学習を開始するのに十分な自信を持っています。私の質問は、SQL データベース (SQLite または MySQL) で Django を学ぶべきかということです。または、Mongo などの NoSQL データベースで Django を学習する必要がありますか?

どちらも読みましたが、わからないことがたくさんあります。Mongo の方が良く/簡単に聞こえますが、同時に、すでにリレーショナル データベースをよく知っていて、より機敏なものを探している人にとっては、より良く/簡単に聞こえます。

4

4 に答える 4

6

初心者にとっては、おそらく Django を使用して学習するのが最も簡単でしょうsqlite。データベースの場所を指定し、バックエンドとして sqlite3 を指定するだけで機能します。これは素晴らしいことです。後で使用する場合postgresは、より多くの作業が必要になりますが、それでも実行可能です。コメントで @JonathanVanasco のメモを参照してください。

最終的に NoSQL DB を使用したい場合、Django は現在それをサポートしていません。以下は、認識されているサードパーティの Django バックエンドのリストです。

django-nonrelとして知られるサードパーティのフォークを通じて Mongo を使用することもできますが、この特定の実装は ManyToManyFields をサポートしておらず、他にもいくつかの制限があります。django-nonrel の Mongo の詳細については、このブログ投稿を参照してください。django-nonrel hereに関する非公式ドキュメントがいくつかあります。

于 2012-08-22T18:17:17.523 に答える
1

Postgres は、本番環境の Django にとって優れたデータベースです。sqlite で開発するのは素晴らしいことです。最初の Django サイトで RDBMS を使用しないようにするために、多くの作業を行うことになります。

Django の最大の強みの 1 つは、スムーズなフルスタック統合、優れたドキュメント、contrib アプリ、アプリ エコシステムです。Mongo を選択すると、多くのことを失います。GeoDjango は SQL も想定しており、他のものよりも postgres/postgis を本当に愛しています - そして GeoDjango は本当に素晴らしいです。

Mongo を使用する場合は、ボトル、フラスコ、トルネード、サイクロンなど、フルスタックの統合が少なく、特定の ORM を使用することを想定していないものから始めることをお勧めします。たとえば、Django のチュートリアルでは、SQL DB で ORM を使用していることを前提としています。

于 2012-08-22T18:12:32.513 に答える
0

sqlite始めるのが最も簡単です。SQLコインを投げて、最初のプロジェクトのどちらかMySQLを選択することをすでに知っている場合は!Postgres

于 2012-08-22T18:29:34.960 に答える