2

私は Coldfusion の正式なトレーニングを受けていないので、このようなことは私が想定していたように機能しないため、本当に混乱します。

私のフォルダ構造はこれです:

MainAppFolder
  |
  |_ApplicationFolder
    |
    |_SubAppFolder1
       |_Application.cfc
    |
    |_SubAppFolder2
       |_Application.cfc
    |
    |_Application.cfc

メインに含まれる最後の Application.cfcApplicationFolderは、自分のものを含めたい Application.cfc です<cflogin>。それは機能し、うまく機能します。ただし、サブ Application.cfc を に実装すると問題が発生しSubAppFolderxます。これらの Application.cfc には、onRequestStartイベントを含める必要があるだけです。

<cffunction name="onRequestStart">
    <cfset Application.AppID = 4>
    <cfinvoke component="loc" 
              method="getAppName" 
              returnvariable="appName" />
     <cfset Application.AppName = appName>
</cffunction>

この問題を解決しようとすればするほど、自分の穴に深く入り込んでしまいます。以前に戻って Application.cfc の操作方法を学ぼうとしましたが、チュートリアルに関する限り、Coldfusion に関する情報はあまりありません。ドキュメントは素晴らしいですが、このような状況で何をする必要があるかを理解するのには役立ちません。

onRequestStartでは、で持っているものを実行するには、何をする必要がありSubAppFolderxますか? それは簡単な答えだと思いますが、私が言ったように、私はここの穴に自分自身を掘っているだけです.

4

2 に答える 2

1

cfinclude は問題ありませんが、目的の機能が提供されない場合があります (継承) Application.cfc はそれ自体がコンポーネントであるため、他の CFC と同じようにメソッドをオーバーロード/オーバーライドできます。

Ben Nadel として知られる伝説の人物が、この質問に対する完璧なブログを既に投稿しているので、コードには触れません。

http://www.bennadel.com/blog/1179-Ask-Ben-Extending-Application-cfc-And-OnRequestStart-With-SUPER.htm

于 2012-09-18T19:33:33.337 に答える
0

ログインを cfinclude ステートメントに入れ、Application.cfc を SubAppFolder1 内に配置できます。

  1. すべての Application.cfc に共通のコードを含めます。
  2. SubAppFolder1 のカスタム コードを含む
于 2012-09-12T03:37:58.207 に答える