0

zend フレームワーク アプリケーションのプラグイン アーキテクチャのようなものを実現する方法を見つけようとしています。

いくつかのドキュメントのアップロードフォーミュラがあるとしましょう。「プラグイン」がない場合は、ウェブサーバーにデフォルトでアップロードしたいと考えています。ただし、「特定のアップロード プラグイン」を挿入する場合は、ファイルを sharepoint にアップロードする必要があります (例として)。

しかし、コードをまったく変更せずにこれを実現したいと本当に思っています。一部の構成ファイルを変更しても問題ありませんが、コントローラーコードをまったく変更する必要はありません。

誰かがそれを達成する方法についてのチュートリアルや方法を教えてもらえますか? それとも、その種のタスクに関するいくつかのベスト プラクティスですか?

前もって感謝します

4

1 に答える 1

1

私が最初に考えたのは、Zend Framework でZend_File_Transfer_Adapter_Http標準的なアップロード要素を処理するために使用されるアダプターを拡張することです。File

ファイルを受信するメソッドをオーバーロードするreceive()だけで済みますが、ファイルをサーバー上の永続的な場所に移動する代わりに、アダプターを共有ポイントにアップロードするか、ファイルを最終的な宛先に移動するように注意することができます。多分。

コンストラクターは、共有ポイントの IP アドレスや資格情報などのアダプター固有のオプションや、必要なその他のオプションを設定できます。

このように、コントローラーに変更を加える必要はありません。Zend_Formオブジェクトを変更してFile要素を使用するだけで、カスタム転送アダプターを与えることができます。すべての検証とエラー処理は Zend_Form によって行われ、アダプタは必要な場所にファイルを配置する詳細を処理し、そこで発生したエラーはフォームに戻すことができます。したがって、コントローラ コードを変更する必要はありません。そのロジックはすべて、転送アダプターとフォームに存在します。

それがあなたを正しい方向に向けるのに役立つことを願っています。

于 2012-05-30T17:09:10.433 に答える