Webルートのサブディレクトリにapplication.cfcがあります。
/app/application.cfc
最近、そのサブディレクトリに別のapplication.cfcを追加しました。これは、ここで説明するプロキシメソッドを使用して元のapplication.cfcを拡張しますhttp://corfield.org/blog/index.cfm/do/blog.entry/entry/Extending_Your_Root_Applicationcfc:
/app/mysubdir/application.cfc
/app/applicationproxy.cfc
サブディレクトリcfcのextends属性は次のようになります。
<cfcomponent extends="app.applicationProxy">
これはこれまでのところすべて正常に機能しますが、背景は次のとおりです。/appstagingという名前の/appの隣のディレクトリにアプリを配置することで、アプリをステージングしています。これは正常に機能します。つまり、すべての相対パスを使用するため、競合は発生しません。上位レベルのapplication.cfcは、それがどのディレクトリにあるかを判断し、変数(application.appdirなど)を設定し、コードはそれを使用して相対パスを構築できます。必要な場合。
これが私の問題です。新しい/app/mysubdir/application.cfcができたので、これがステージングdirツリーである場合、extendsのパスを実際に「appstaging.applicationProxy」にする必要があります。ただし、ColdFusionは、「extends」の値は一定であると主張しています。他の場所で行っているように、自分がどこにいるかを把握して適切なdirnameを入力することはできません。
これを解決する方法はありますか?