ColdFusion 11:更改扩展 Application.cfc 中不同函数的应用程序“this”范围元数据

2024-03-28

我对 ColdFusion 应用程序工作流程有了大致的了解。但有些部分我仍然不清楚。一般工作流程如下...

  1. 公共应用程序设置已设置(即 this.name、this.mappings ext.)
  2. 应用程序启动时
  3. 会话开始时
  4. 请求开始时

我有一个带有 Application.cfc 的子目录,它扩展了存在于 web 根目录的根 Application.cfc

在阅读了大量描述这种设计模式的博客之后......

  • ColdFusion 应用程序特定的映射与 CFinclude 配合使用 https://www.bennadel.com/blog/2144-coldfusion-application-specific-mappings-work-with-cfinclude.htm
  • 使用 A 扩展 Application.cfc ColdFusion 框架组件 相对路径代理 https://www.bennadel.com/blog/2115-extending-the-application-cfc-coldfusion-framework-component-with-a-relative-path-proxy.htm

  • 在子目录 Application.cfc 中扩展 OnSessionStart() https://www.bennadel.com/blog/1499-ask-ben-extending-onsessionstart-in-a-sub-directory-application-cfc.htm

  • 应用程序 cfc-when-things-run http://blog.adamcameron.me/2012/08/more-on-applicationcfc-when-things-run.html

  • ColdFusion Application.cfc - 执行顺序 https://stackoverflow.com/questions/11936210/coldfusion-application-cfc-order-of-execution

在最后一个链接中(一些答案提供了一些基本的见解,但没有一个真正涉及使用this范围具有扩展的 Application.cfc 。以下答案之一让我失望..(它可能不正确,因为没有赞成票)

Application.cfc 文件内此范围内的任何内容都将成为 应用程序变量,每个应用程序生命周期仅创建一次 循环。应用程序启动后,没有其他用户使用该应用程序 在 Application.cfc 内

我倾倒了#application#范围,然后就不同了#this#

getApplicationMetaData()似乎转储相同的数据<cfdump var=#this#>所以我猜测这个元数据是最初设置的全局配置变量。

1) 如果 Application.cfc 使用代理扩展根 Application.cfc,则this扩展组件共享的范围(用于设置应用程序名称)? (如果我设置this.name = "root"在根组件中和this.name = "user"在派生的应用程序中,冷聚变是否将其视为两个不同的应用程序,或者只是应用程序名称的值发生变化?

2)是否有办法更改应用程序元数据this任何 Application.cfc 函数中的作用域后伪构造函数 (onApplicationStart ,onSessionStart ,onRequestStart)?

我正在考虑尝试使用以下命令在根组件中设置应用程序特定的映射onApplicationStart()以便映射仅设置一次。


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ColdFusion 11:更改扩展 Application.cfc 中不同函数的应用程序“this”范围元数据 的相关文章

  • Coldfusion CreateDate 问题

    我遇到了一些麻烦CreateDate 函数 它只是出错 我不知道为什么 我正在运行此查询以获取新闻报道中的所有日期 以便我可以每月创建一个新闻档案
  • 更改方法中变量的值,Java [重复]

    这个问题在这里已经有答案了 我有一个关于更改 Java 方法中变量值的问题 这是我的代码 public class Test public static void funk int a int b b 0 b 0 2 a b 0 5 pub
  • Javascript:使用 IIFE 和块语句之间的区别

    IIFE主要用于封装作用域 function let myVar 10 not global 但为什么不直接使用块语句呢 let myVar 10 also not global 除了范围封装之外 进一步使用 IIFE 是否还有其他好处 块
  • Rails I18n 翻译范围

    编写完全翻译的应用程序可能会变得乏味 有没有办法为当前上下文设置默认翻译范围 示例 我正在部分内容中写入 deadlines html erb in the 显示 html erb我的行动ProjectsController 现在 因为我想
  • Coldfusion HMAC-SHA1 加密

    这里有一个在 javascript 中工作的 HMAC SHA1 示例 http jssha sourceforge net http jssha sourceforge net 要加密的文本 vibaHBXwUXFqVSg kTrqYJZ
  • 参考:什么是变量范围,哪些变量可以从哪里访问以及什么是“未定义变量”错误?

    注意 这是一个处理 PHP 变量作用域的参考问题 请将符合此模式的众多问题中的任何一个作为此问题的重复项关闭 PHP 中的 变量范围 是什么 一个 php 文件中的变量是否可以在另一个 php 文件中访问 为什么我有时会得到 未定义的变量
  • 异常处理的范围规则是什么? [复制]

    这个问题在这里已经有答案了 我偶然发现了一个有趣的场景这个问题 https stackoverflow com q 69464430 6045800 考虑以下简单示例 try 1 0 error error except Exception
  • 为什么不能在 if 语句中声明变量?

    以下 Java 代码无法编译 int a 0 if a 1 int b 0 if a 1 b 1 为什么 不能有任何代码路径导致程序将 1 分配给b无需先声明 我突然想到b的变量范围可能仅限于第一个if声明 但后来我不明白为什么 如果我实在
  • 访问父函数中定义的变量

    有没有办法访问 foo从内部inner function outer foo function inner print foo inner outer PHP 在 PHP 5 3 中 你可以这样做 function outer foo in
  • 嵌套函数中的变量作用域

    有人可以解释为什么以下程序失败 def g f for in range 10 f def main x 10 def f print x x x 1 g f if name main main 带有消息 Traceback most re
  • 为什么某些字符无法从 CFQUERY 正确注入到 SQL Server?

    我有一个在 Lucee 上运行的 Coldfusion 应用程序 它连接到 SQL Server 数据库 当我直接在 SQL Server 管理器中运行以下查询时 UPDATE article SET content 20m WHERE i
  • Java 变量的作用域

    我不明白为什么这段代码的输出是10 package uno public class A int x 10 A int x 12 new B public static void main String args int x 11 new
  • 使用jquery和coldfusion cffile上传多个文件

    不是一个真正的问题 只是想将其发布在某个地方 因为我在其他地方找不到它 现在我已经拼凑了一个工作演示 我想我会分享 这在 Coldfusion 和 Railo CFML 服务器上同样有 效 问题是 对于 CFML 开发人员来说 CFFILE
  • python中函数变量的作用域

    假设我们有两个函数 def ftpConnect ftp FTP server ftp login ftp cwd path def getFileList ftpConnect files ftp nlst print files 如果我
  • 在 Twig 的父作用域中设置变量

    在Smarty你可以做 var bla scope parent 在 Twig 中可能吗 不建议使用块 我知道 我需要变量 如果您不想使用default 过滤器 即 当您想在整个父模板和子模板中多次使用该变量时 您实际上可以在父模板中定义一
  • ColdFusion cfmail 主题行中的特殊字符

    邮件主题行中的特殊字符将转换为问号或方框 我尝试将主题行的动态字符串包装在 URLEncodedFormat 中 但最终徒劳无功
  • 为什么函数可以返回由 malloc 设置的数组,但不能返回由“int cat[3] = {0,0,0};”设置的数组

    为什么我可以从函数返回由 malloc 设置的数组 int dog int malloc n sizeof int 但不是数组设置 int cat 3 0 0 0 返回 cat 数组并带有警告 感谢你的帮助 这是一个范围问题 int cat
  • clearInterval() 不起作用[重复]

    这个问题在这里已经有答案了 可能的重复 JS 如何在使用 setInterval 后清除间隔 https stackoverflow com questions 8266726 js how to clear interval after
  • python - 使用“with”语句后的变量范围[重复]

    这个问题在这里已经有答案了 我在 stackoverflow 上没有找到这个问题的答案 所以我认为询问它可能会有所帮助 并将其放在这里 我在打开文件后声明一个新字典 方法如下 with open some file txt r as f d
  • 将 ColdFusion 输出中的 # 视为文本而不是变量?

    我制作了一个 JQuery 列表 我想用数据库中的车牌号码填充它 为此 我创建了一个新的 cfm 文件 并让它在 html 中输出我想要的内容 这样我以后就可以像这样转换它 设置板 cfm

随机推荐