私はZendFrameworkベースのアプリケーション(Shopware)で作業しています。
次のように、コントローラーにテンプレートディレクトリを追加します。
class Shopware_Controllers_Backend_Pricify extends Shopware_Controllers_Backend_ExtJs
{
public function init()
{
$this->View()->addTemplateDir(dirname(__FILE__) . "/../../Views/backend/");
parent::init();
}
}
しかし、どういうわけか、smartyは常にコントローラーアクションの(存在しない)部分を調べます。
Unable to load template snippet 'backend/mycontroller/model/main.js' in 'snippet:string:{include file="backend/pricify/model/main.js"} in Smarty/sysplugins/smarty_internal_templatebase.php on line 128
コントローラーはextjsを介した読み込みで動作しますが、これが問題であるとは思われません。テンプレートディレクトリをvar_dumpすると、正しいディレクトリが含まれます。コードを賢くデバッグしましたが、ディレクトリがチェックされる部分は見つかりませんでした。
これはソフトウェアスタック内の問題である可能性があることは承知していますが、どこで検索すればよいかわからないため、ここで質問します。追加のデータを投稿する必要がある場合は、教えてください。