0

私は過度に賢くしようとしていると思います。それが機能する場合は、ええ。そうでない場合でも、心配はいりません。

アプリケーションを可能な限りモジュール化したいと考えています。現時点では製品モジュールしかありませんが、経験から、製品が子になるカテゴリモジュールも必要になる可能性があることがわかっています。カテゴリ モジュールは存在しませんが、たとえば Products_Forms_NewProduct を呼び出してそのフォームをロードする必要があります。カテゴリ モジュールがアプリケーションにドロップされると、それが自動的に検出され、たとえば Products_Forms_NewProduct の呼び出しが Categories_Forms_NewProduct に転送されるようにします。

どうすればいいですか?

4

1 に答える 1

2

依存性注入 IMO を探しています。しかし、フォームを適切に変更するクラスを持つことをお勧めします。フォームプラグインのように。これは拡張の場合ではなく、合成の場合です。私はそれらの行に沿って何かを使います:

// say in Form_NewProduct's init()
$this->addPlugin(new Form_Plugin_Category());
$this->addSubform(new Form_NewProduct_ProductSubform());

//in plugin or in form directly
if (class_exists('Form_NewProduct_CategorySubform')) {
    $this->_form->addSubform(new Form_NewProduct_CategorySubform());
}
于 2011-04-27T19:09:10.457 に答える