1

我来自 PHP/MySQL 背景,现在我作为 Coldfusion 9 开发人员获得了新的后端职位。我对 Coldfusion 完全陌生,因此出于学习和测试目的,我在本地主机上安装了 CF。在我的本地主机上,我设置并测试了 ORM,它运行良好,并且不会干扰其他父文件夹。一旦我将 Application.cfc 文件上传到我们的主服务器,在 site/project89/cfc/orm/ 下

<cfcomponent>
  <cfset this.name = "whatevername">
  <cfset this.ormenabled = "true">
  <cfset this.datasource = "name_db">
</cfcomponent>

它影响了整个父服务器文件夹,包括我们之前构建的所有其他冷融合项目的主“站点”文件夹。
有没有办法将 ORM 设置为仅影响其自己的子目录而不对其父文件夹进行任何更改?例如,为站点/项目 89 启用 ORM,并在其他站点/项目上阻止 ORM**。任何帮助或建议将不胜感激,因为在我工作的地方没有人熟悉 ORM,我不能再让我们的服务器崩溃。
谢谢你。

4

2 回答 2

3

我认为您遇到的问题与您的应用程序的位置/结构有关。

您需要将您Application.cfc的移动到site/project89.

来自 ColdFusion 文档:

当 ColdFusion 开始处理请求时,它会执行以下操作:

它在页面目录中搜索名为 Application.cfc 的文件。如果存在,它会创建一个新的 CFC 实例,处理初始事件并停止搜索。(ColdFusion 为每个请求创建一个新的 CFC 实例并处理其初始化代码。)

如果请求页面的目录没有 Application.cfc 文件,它会检查目录中的 Application.cfm 文件。如果存在,ColdFusion 逻辑上将 Application.cfm 页面包含在请求页面的开头并停止进一步搜索。如果请求页面的目录没有 Application.cfc 或 Application.cfm 文件,ColdFusion 会向上搜索目录树并首先检查每个目录中的 Application.cfc 文件,如果找不到,则查找 Application.cfm 页面, 直到到达根目录(如 C:)。

当它找到 Application.cfc 或 Application.cfm 文件时,它会处理该页面并停止搜索。

http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=appFramework_06.html(ColdFusion 8 但仍然相关)

于 2012-10-15T13:40:23.457 回答
1

我猜在“受影响”下,您的意思是它正在到处寻找模型 CFC。如果这是真的,你可以尝试通过限制模型的路径来解决它:

this.ormsettings.cfclocation = "path.to.models";
于 2012-10-15T12:54:01.493 回答