问题标签 [coldfusion-2016]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
coldfusion - 如何在 ColdFusion 2016 中动态设置电子表格自动过滤器?
我想为电子表格第一行的所有列添加动态自动过滤器。这是我到目前为止的示例:
这可行,但问题是我的文件中的列是否更少或更多。有没有办法在我的文件第一行的每一列上设置过滤器?这不应该是硬编码的。如果您对此问题有任何示例,请告诉我。谢谢你。
ajax - 通过 ajax 使用 ColdFusion 处理大型表单
我经常使用 Ajax (Jquery) 发送表单以在 ColdFusion 中进行处理。我将表单发送到 CFC,该 CFC 通过 Ajax 通知将结果和错误返回给用户。
表单可能非常大(想想带有额外输入的完整 HTML 页面)并且需要 CFC 中的大量逻辑才能正确处理,具体取决于表单中选择的选项。
因为 CFC 中的每个函数都可能很大(可能有 1200 行代码),所以我从 ColdFusion 中得到了可怕的“分支目标偏移量太大而不能短”的错误。为了解决这个问题,我将一些代码放入 .cfm 文件中,并用于<cfinclude>
将代码返回到“解决”问题的 cfc 中,但在尝试组织所有小片段以与特定 CFC 关联时,我感到很困惑。这也可能是一种低效的工作方式。
我想知道其他 ColdFusion 用户如何使用 CFC 构建/处理处理表单,这些 CFC 在将表单数据输入数据库时会做很多额外的事情。
我想到的一些选择是:
- 为没有太多代码的创建、更新、读取和删除操作创建“shell”函数
- 在 shell 函数
cfinclude
中,所有其他 .cfm 文件中的子函数的代码片段,以将代码保持在最低限度 - 或调用其他执行子功能的 CFC,并将表单变量作为参数传递给它们
上面的选项最终会让我拥有这样的结构(我不喜欢):
我最终会为每个函数创建一个新的 CFC,而不是它们本身就是类/对象。它们可能是 CFM 文件(并且可以使用<cfinclude>
,但这样做似乎很奇怪。有没有人知道的替代/更好/标准方式?
coldfusion - CF proc 结果中的时间格式值无效
我正在从 CF 9 升级到 CF 2016,并在 StoredProc 调用 (cfscript) 返回的数据中看到一些奇怪的行为。
数据库中的数据类型是time(7)
. 我看到问题的数据库值是:00:00:00.0000000
.
我execute().getProcResultSets().results
在行后直接转储结果。
在 CF 9 中,cfdump 中的值
00:00:00.0000000
是正确的。在 CF 2016 中,cfdump 中的值为
1970-01-01 00:00:00.0
这种差异导致我的代码中出现“无效的日期时间错误” :
我通过使用TimeFormat()
函数调用解决了这个问题,但我想知道是否有另一个选项可以解决这个问题,因此 CF 的 StoredProc 返回的数据是正确的,以消除任何可能的混淆。
更新:我使用的是 Adobe 提供的默认驱动程序。
coldfusion - ColdFusion 2016:cfinclude 动态模板名称;偶发错误
美好的一天 - 我的工作组从 CF10 升级到 CF2016。我们已经完成了在负载均衡器后面运行应用程序的 3 台服务器中的 2 台。
由于两台服务器已经升级,我们偶尔会在<cfinclude>
语句中收到 (<<1%) 错误:
该进程无法访问该文件,因为它正被另一个进程使用
每次包含的文件都不一样,但它们都有一个相同的特点:名称是在cfinclude标签中动态生成的。例如:
其中#fileManager.getFile('appl1')#
仅返回 CFM 文件的字符串路径。该文件确实存在,并且它没有被程序员或任何其他(已知)进程修改。这些文件本身通常只是简单的 index.cfm 文件,位于一年内未触及的目录中。
这只发生在动态命名的模板上<cfinclude>
,而不是静态模板名称。
这是服务器上的缓存设置。请注意,没有遇到此问题的服务器(CF10 服务器)上的设置相同
有什么想法会导致这种随机的、短暂的错误吗?除了 CF2016 之外,我无法建立任何模式。
coldfusion - 在 Coldfusion 中使用多个 SessionTimeout
我有一个具有不同类型用户的应用程序。我需要根据用户类型设置 sessionTimeout。例如管理员 30 分钟,用户 10 分钟。为此,我在 application.cfc 中设置了 30 分钟的默认 sessionTimeout
当我转储应用程序变量时,我可以看到 sessionTimeout 是 600,这是正确的。现在在 onRequestStart 方法中,我编写了一个代码来检查 loginIn 用户类型并相应地设置 sessionTimeout。
在此之后,当我转储应用程序变量时, sessionTimeout 以天而不是秒显示。并且会话在 10 分钟后也没有结束。有人可以帮忙吗?如何在应用程序中实现两个不同的 sessionTimeout?另外,为什么我再次设置 sessionTimeout 后它会以天而不是秒显示 sessionTimeout?
file - Coldfusion 将 JSON 文件移动到文件夹会破坏页面(相对路径)
我的第一个问题。如果我需要学习一些东西,请随时喊叫。我一直在这个网站,土坯以及互联网。我认为我的问题是如此基本,以至于没有人问过它。我的专长是 VBA/Excel/SQL,我是 100% 的菜鸟 re: CF 和通用网络编码,就是这样。但我真的很努力。
我的任务是维护/更新在 CF 2016 版本上运行的 Web 应用程序。第一项任务是更新从 CF11 迁移到新版本时损坏的现有图表。我根据 zingcharts 对 JSON 文件执行此操作,当 JSON 文件与页面的 .cfm 文件位于同一目录中时,图表显示正常。美丽的。可能是有史以来最好的图表。所以那部分正在工作。
以下是我访问所有 CF 文件的文件夹结构:
D:\Websites\dev\pages\~cfm & json 文件~
这就是我现在设置它以将 JSON 文件抓取到样式变量名称中的方式:
当然,其中包含 .cfm 文件的文件夹越来越拥挤。所以我在同一级别创建了一个 JSON 文件夹,我想我希望我的结构看起来像:
D:\网站\开发\页面\json\
所以我改变了我的事情:
并收到此错误:
D:\Websites\dev\json\bargraph.json(系统找不到指定的路径)
一个目录太高了。所以我把它改成:
No more file not found 错误,但页面在所有 JSON“cfset”语句结束时停止加载。
我错过了什么?谢谢大家。这些年来,你帮助了我很多次。
html - 由于查询量大,动态下拉列表混乱
我的下拉字段存在问题,该字段由大型查询动态填充。由于当用户访问表单时查询返回一个非常大的值,所以表单会冻结。就像它在等待下拉列表被填充一样。与此同时,所有表单格式都被弄乱了,下拉菜单消失了。当我将查询限制为较少的记录时,一切正常。此查询返回超过 26K 条记录。在 ColdFusion 中是否有解决此问题的方法?我不相信 ColdFusion 不能处理这种情况。我正在使用 ColdFusion2016 和后端 Oracle 11g。
这是查询和下拉列表:
jquery - 单页应用程序框架和登录页面?
我从事过在现有系统内创建的单页应用程序项目。我们现有的旧系统有一个在我们公司创建的框架。这个框架很旧,对移动设备不友好。
现在我有一个项目将我的 SPA 移动到单独的框架。这将需要创建新的登录页面,并决定我应该为这个单页应用程序使用什么框架。我开发的代码在后端使用了 JQuery、HTML5、CSS 和 ColdFusion 2016。
我没有创建登录系统的经验,我不确定如何决定使用什么以及从哪里开始。不仅如此,我还在争论我应该使用什么框架?JQuery 就足够了,还是我应该转向 Angular 或其他什么?
如果有人可以帮助我从哪里寻找和开始,请告诉我。任何博客或文章将不胜感激。我四处寻找,但没有找到太多。关于 SPA 框架有很多争论。此应用程序是全州范围内的产品。我的系统需要不同的访问级别。换句话说,它不仅仅是简单的 SPA。
jquery - ColdFusion 2016 转换特殊字符?
在做了一些研究并致力于 CF 2016 之后,我发现了一个问题。我使用 JQuery/Ajax 提交表单数据。;
如果我在符号转换为的文本区域之一中输入半列;
。我不确定是什么导致半列转换为 HTML 代码。我在提交之前检查了数据表单,如果我Test;
在控制台中输入,这将如下所示:Test%3B
。然后我在我的 cffunction 顶部的 cfmail 中转储了表单范围,表单字段值如下所示:Test;
这是我创建的 HTML/JQuery 代码的示例:
和冷融合功能的例子:
在我完成此代码之前的一个注释在 CF10 上运行良好,一旦我们升级到 CF 2016,这个问题就出现了。之前再次使用了完全相同的客户端代码,并且未转换半列宪章。如果有人遇到同样的问题并且知道如何解决这个问题,请告诉我。谢谢!
mysql - ColdFusion cfqueryparam CFSQLTypes for MySQL 5.x
我一直在寻找包含 MySQL 5.x 数据类型的 cfqueryparam(或 cfscript 变体)的 CFSQLType 参数的参考表。
我已经能够在 Adobe 找到这张表:
https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-tags/tags-pq/cfqueryparam.html
但它只包括 JDBC、DB2、Oracle 和 MSSQL 的信息。我也觉得这个和许多 adobe 来源的文档都在 CF 9/10 左右徘徊。他们曾经为特定版本有单独的文档区域,但我不确定它们是否可用。
我在 cfdocs.org 上找到了 cfqueryparam 标记,但它不包含任何数据库系统的表或参考。
https://cfdocs.org/cfqueryparam
某些 MySQL 5.x 数据类型将与其他数据库平台具有的一致匹配;varchar 是 CF_SQL_VARCHAR 等。
MySQL 有一些独特的类型,如 GEOMETRY、GEOMETRYCOLLECTION、LINESTRING、MULTILINESTRING、MULTIPOINT、MULTIPOLYGON、POINT 和 POLYGON。它还有一些其他数据类型,我可以假设 JSON、ENUM 和 SET 是 CF_SQL_VARCHAR。其他数据类型,如 MEDIUMINT、MEDIUMTEXT、TINYTEXT 等。我也做了一些猜测。
有谁知道是否有将所有这些 MySQL 5.x 数据类型映射到 cfqueryparam CFSQLType 参数的参考?
选项: 1. 使用每种数据类型创建一个表,对其进行查询,并查看 CF 元数据以确定 CF 如何绑定到列。2. 为每种数据类型创建一个表,并在其上使用 cfdbinfo 查看为列返回的类型。
我不确定这些选项中的任何一个是否会返回有用的信息,但如果文档不存在,这就是我接下来要尝试的。