2010-11-21 3 views
2

私はウェブアプリケーションの背景を持っていませんが、C++でかなりの経験を積んだ経験があり、素早く学習することができます。RailsまたはPylons - Pythonの良いフレームワークですか?

私はPythonを学び、SQLAlchemyを通して読んでいました。私は純粋なPython OOでコーディングするアイデアのようなものですし、素敵なSQLAlchemyマッパーを使ってすべてを保持しています。私は、RailsのActiveRecordのアイデアよりも優れた、このデカップリングされたアプローチ(純粋なPythonクラスをマッパー関数に沿ってDBと話すこと)が好きです。私は最終的には、DBをアプリに接続することをよりコントロールすると思います。 (私は、バックグラウンドプロセスによって更新されたDBで作業する必要があります.DBを満たすWebクローラーのようなものです。)同時に、いくつかのものは私がRailsについてもう一度考えさせてくれます。 Railsでの電子メールとAjax処理の合理化

私は正しい方法を考えていますが、Railsはフォーム検証操作の柔軟性が低く、DBで作業していますか?そして、Pylonsでは電子メール(通知)、RSS、Ajaxを処理するのが難しいですか?

あなたは何をお勧めしますか? ありがとう

答えて

4

Djangoをご覧ください。このように正確にあなたが探しているように思えます:-)。

+3

jqueryを使用することを忘れないでください。 – aaronasterling

+0

TurboGearsは、Python Web Frameworkでもよく使われています。 –

+0

私の印象は、Djangoが動作するためには、ORMを使用する必要があるということです。つまり、別のバックグラウンドプロセスで埋め込まれたデータベースバックエンドは、DjangoのDB処理方法に限定する必要があります。私は、DBとアプリケーション間の作業に最大限の柔軟性を求めています。 – Payaam

1

RailsはPythonではなくRubyで書かれています。あなたの心がPythonに設定されていれば、Djangoに行ってください。しかし、Railsに公正な振る舞いを与えてください。 ActiveRecordはORMだけではありません。私はDataMapperをいくつかのアプリにも使用しています。私は偏っているかもしれませんが、私はRailsの生態系がDjangoよりも大きいと思う傾向があります。

+0

DataMapperとSQLalchemyの違いを教えてください。 Railsで開発されたツールを使用できるようにするには、どれくらいActiveRecordを使用する必要がありますか。 – Payaam

+0

RailsのエコシステムはDjangoよりも大きくなっていることに私は同意すると思います。 – Payaam

0

私は長年にわたってPylonsのでいくつかのウェブサイトを書き、Iとても好き。パイロンの素晴らしい点は、ほとんどが第三者の図書館で構成されていることです。つまり、SQLAlchemy、WebOb、FormEncode、Beaker、Makoなど、他のプロジェクトで使用できる多くの便利なライブラリを学習していることを意味します。特にSQLAlchemyとBeakerは、どのようなコンテキストでも非常に便利です。

4

これらのPythonのフレームワークを見てください:

  1. Django:おそらく単一の最も人気のあるPythonのフレームワーク、より良い(と悪いこと)のためには、非常に-ずっとフルスタックソリューションです。

  2. Pylons作業のDjangoの一つの方法に反応としては、Pylonsのは、より良い(そして悪いこと)のために、あなたのフレームワークを構成するモジュールの結合ずっと緩いを使用しています。

  3. TurboGearsジャンゴとパイロンの間に幸せなメディアの試みとして、TurboGearsのはPylonsのに基づいていますが、特定のコンポーネントの選択、およびそれを一緒に保持するために接着剤で準備ができています。

  4. Zope Zopeは、「Webフレームワーク」よりもアプリケーションサーバーとフレームワークのほうにあります。それはちょうどウェブベースで起こる。

最初の3つはすべてRuby on Railsに触発され、それぞれが改善のためのそれ自身のアイデアを持っています。 ZopeはRailsに先行し、それは自分自身の世界です。

TurboGearsを使用していくつかの小さなアプリを開発しました。いいね。当時、彼らのドキュメントはちょっと悪かったです。それが変わったことを願っています。

私はまた直接お使いになりましたPython Paste数回。 Pasteは、PylonsとTurboGearsのベースとなるHTTPサーバーベースです。もう一度非常にいいです。

また、選択肢が与えられたら、私はいつもSQLAlchemyをORMとして使用しました。それは本当に私が非ウェブプロジェクトでも使用してきた印象的なソフトウェアです。

これは役に立ちます。あなたがどのような道を取っているか教えてください。 :-)

+0

ありがとうございましたnonot1。私はTurboGearsをチェックしましたが、私はGenshiが好きではありません(私はそれがMakoのようにずっと遅いと読んでいます)。 Pylonsのドキュメントはそれほど素晴らしいものではありませんが、フレームワーク全体がかなり薄いようです。 – Payaam

+0

私はおそらくパイロンを試し、私は物事を取り出せるかどうかを見ます。もし私がRailsに行ってしまったら、Pylonsを理解しようとしたように多くのことを学んでいないでしょう。私はDjangoがコンテンツアプリを作成するのにとてもいいと思っていますが、それは私が探しているものではありません。 Web-crawlerで動作するWiKiタイプのアプリケーションが必要です。 – Payaam

+0

@payaam Pylonsは良い選択です。私はTGのドキュメントはまだ混乱している...非常に悲しい参照してください。 FWIW、TurboGearsはMako&Jinja2を含むいくつかのテンプレートエンジンをサポートしています。 – nonot1

0

もう1つの完全なスタックフレームワークであるNagareを見ることもできます。 NagareのWebサイトでは、すでに生産中のNagareベースのプロジェクトがあります。

0

「Workers」&スケジューラの概念、websocket_messaging.pyの短い竜巻の例によるWebページのイベントドリブンの更新など、多くの小規模プロジェクトにWeb2Pyを使用しました。小さくて強力な開発フレームワークを探しているのであれば、小さなDBと表示テーブルが含まれていますが、それは素晴らしいことです。 1つのHTML行を書く必要はありません。私はこの分野で競合相手は見当たりません。私の意見では、これははるかに簡単で、djangoより速いですが、djangoは複雑なアプリケーションで多くの自由を提供するかもしれません。

関連する問題