これら2つのフレームワークのどちらが11か月の経験を持つ開発者により適しています。サーバー側のコーディングについてpythonを学ぶことにし、これらのうちどれが私のスキルレベルの人に適しているかを知りたいと思いました。数日web2pyをいじくり回して、本当に気に入っていますが、Djangoが見逃しているものをもっと提供してくれるのではないかと思っています。
PS。更新:3つのDjango本を購入し、Djangoとweb2pyの両方のいくつかの小さなプロジェクト/チュートリアルを読んだ後、すばらしいご意見をありがとうございました。web2pyに落ち着きました。これは素晴らしいフレームワークであり、ウェブ開発を初心者にとって本当に楽しいものにします。このフレームワークは今後主流になるので、初心者にはこのフレームワークを学ぶことをお勧めします。 Djangoも素晴らしいフレームワークですが、私の限られた経験ではweb2pyの方が優れています。
(免責事項:私はweb2pyのプロジェクトリーダーです)
Djangoはweb2pyよりも約5年長いため、より多くのユーザーとアプリケーションを誇示します。 Djangoは、web2pyの「admin」と同じではなく、web2pyの「appadmin」のような「admin」と呼ばれるものを持っています。Djangoの「admin」はweb2pyの「appadmin」よりも優れており、カスタマイズ可能です。 Djangoにはweb2pyの「admin」に相当するものはありません。名前の混乱のためごめんなさい)。
web2pyはよりコンパクトで、すぐに使える機能を備えています(サポートされるデータベース、WebベースのIDE、チケットシステム、パッチなしのGAEでの実行、複数のログイン方法、ロールベースのアクセス制御、Webベースの翻訳インターフェイス、複数のデータベース接続のサポート、分散トランザクションなど)。
私にとってweb2pyの最も重要な機能は自動移行です。 Djangoはそれらをすぐに提供しません。
Web2pyの長期的な後方互換性は、セキュリティとともに主要な目標です。 Djangoはセキュリティの点でweb2pyに匹敵します(web2pyにはCSRF防止とテンプレートのデフォルトエスケープがあったことを除きます)が、Django= 1.0 web2pyは2007年10月からリリースされていません。
私にとって、web2pyの構文はより自然です:
db(db.tablename.fieldname <= value).select() # web2py
Tablename.objects.filter(fieldname__lt=value) # Django
Djangoに存在しないweb2pyの機能については知りません。私はその質問をweb2pyに追加したいので、何度も質問しましたが、まだ満足のいく答えを受け取っていません。
もちろん、私たち二人が行うことはありますが、異なる点があります。 Djangoは「暗黙よりも明示的である」の後に続きます。web2pyは「すべてがデフォルトの動作をする必要があります」に従いません。これによりweb2pyのコードと設定がよりコンパクトになります。
とにかく、あなたが選ぶものは何でも、それらは両方とも良い堅実なウェブフレームワークであり、相違点よりも類似点が少ないです。 Djangoの開発者は非常に賢い人です。
Web2pyコミュニティはとてもフレンドリーです。実験として、web2py googleグループとDjangoグループで質問してみてください。
Djangoとweb2pyは、類似の機能と機能を備えた優れた「フルスタック」Webフレームワークです。どちらのフレームワークでも初心者として「見逃す」ことはありません。
あなたがあなたの学習で何をしたいのかをもっと知らずにあなたの質問に答えるのは難しいです。言語ではなくフレームワークを学習する危険があると言う人もいるでしょう。そのため、Python言語とより軽量なフレームワーク(たとえば Flask または wekzeug )最初に。
そうは言っても、web2pyの初期学習曲線はDjango=そのまま 学習ツールとして設計された )よりも低くなっています。学習は無駄にならず、将来何か他の何かが必要だと判断した場合、web2pyを使用して学んだ優れた技術は無駄になりません。
Djangoの学習リソースは増えていますが、以前よりも長くユーザーが増えているため、web2pyの学習も高速です。優れた book とほぼ ユーザーグループ に関する質問への即答。
仕事を探しているなら、もっと多くのDjango仕事があるので、それが要因かもしれません。それを言って、web2pyコミュニティは最近 experts4solutions 将来、スキルと可用性を促進できます。
楽しんで!
私はWeb2pyとDjangoの両方に完全に慣れていますが、Pythonデータベースを使って、シンプルなデータベースのフロントエンドを学習、作成できるPythonフレームワークが必要でした。私はweb2pyを見ましたが、完全な初心者を対象としたきちんとしたチュートリアルを見つけることができませんでした、web2pyをインストールしたとき、それは非常に簡単で、次に何をすべきか分かりませんでした、私を導くチュートリアルはないようでした単純なWebアプリを構築する方法(hello worldだけでなく)。一方、Django did 最初のDjangoアプリパート1 。の作成)これは本当に良いことで、初心者に紹介をしましたWeb2Pyがこれを提供するまで、私の投票はDjangoに送られます。
多くの言葉で:(私が理解したように)
Web2pyは間違いなく簡単で、コードをよりシンプルでクリーンにします。しかし、Djangoは、何が起こっているかをよりよく理解し、設計/プロセスを変更するためのより多くの力を与えます。
Web2pyは「単純なものは複雑なものよりも優れています」に重点を置いていますが、Django=は暗黙的なものよりも明示的なものに重点を置いています。TheZen of PythonどのフレームワークがよりPythonicです。