次の2つのファイルがあり、2番目のファイルで最初のファイルを拡張したいと思います。
- wwwroot \ site \ application.cfc
- wwwroot \ site \ dir \ application.cfc
ただし、2番目のファイルのコンポーネントを宣言しようとすると、extends属性に何を入れるべきかわかりません。 私の問題は、複数の開発サイト(共有SVNリポジトリを使用)がColdFusionの同じインスタンスで実行されているため、CF管理者で次のようにマッピングを作成することはできません。
<cfcomponent extends="site.application">
ただし、ColdFusionは次のことを好みません。
<cfcomponent extends="..application">
または次のような動的入力:
<cfcomponent extends="#expandpath('..').#application">
ランタイムマッピング(ここのように)を作成することも可能ではないようです。ベースのapplication.cfcで作成しても、継承するcfcが宣言されるまでにそのコードはまだ実行されていないため、役に立ちません。継承するコンポーネントが定義される前にマッピングを作成することはできません。これは、コンポーネントをアタッチするアプリケーションがまだないためです。
親ディレクトリを参照して拡張を実行する方法はありますか?
明確にするために編集:上記の太字のテキストのため、ApplicationProxyソリューションは機能しません。現在、回避策として、\ dir \ application.cfcをSVNにチェックインしていないため、各開発者は自分のルートapplication.cfcを拡張するバージョンを保持できます。明らかに、これは理想的ではありません。