3

Django と Pylons は、ミドルウェアがどのように機能するかについて異なる考えを持っているように私には思えます。私は Pylons が標準化されたPEP 333に従っていることを気に入っていますが、Django はより広く採用されているようです。両方で使用されるミドルウェアを作成することは可能ですか?

このミドルウェアを含むプロジェクトは、ESAPI と呼ばれるセキュリティ ツールキットを Java から Python に移植しています。Java は非常に標準指向であるため、フレームワークにとらわれないことは非常に簡単です。Python では、フレームワークが異なれば、HttpRequest オブジェクトやミドルウェアなどの基本的な機能がどのように機能するかについての考え方も異なるため、これはより困難に思えます。

どうやら、新しいユーザーは複数のハイパーリンクを投稿することはできません。Django および Pylons ミドルウェア情報へのリンクについては、以下を参照してください。

4

2 に答える 2

3

Pylons は標準の WSGI ミドルウェアを使用します。WSGI 経由で Django をデプロイする場合、その時点で WSGI ミドルウェアを使用することもできます。ただし、現在、settings.py の標準の Django MIDDLEWARE_CLASSES オプションを介して WSGI ミドルウェアを使用することはできません。

とはいえ、現在、Django 自体で WSGI ミドルウェアを使用できるようにする Google Summer of Code プロジェクトがあります。私はこのプロジェクトの状況を追跡していませんが、コードはHttp WSGI 改善ブランチで入手できます。

于 2009-07-22T20:45:09.413 に答える
0

Pylons では、ミドルウェアという用語は WSGI ( PEP 333 ) ミドルウェアを意味し、Django はミドルウェアの独自の内部メカニズムを意味します。

ただし、 (mod_python や lighttpd+flup などの代わりに) apache+ mod_wsgiで Django を実行する場合は、Django に WSGI ミドルウェアを含めることもできます。ただし、WSGI ミドルウェアに見られる機能の多くは、Django 自体または Django ミドルウェアに既に組み込まれているため、これは通常行われません。

WSGI と Django ミドルウェアの違いは小さいので、両者の間でコードを変換するのは簡単です。難しい問題は、ORM のような外部ライブラリを使用する場合です。

WSGI Wikiには、 WSGI ミドルウェアの優れたリストがあります。

于 2009-07-22T20:45:29.540 に答える