【问题标题】:QueryFilter() return array of structure in coldfusion2016. But it's should return queryQueryFilter() 返回coldfusion2016中的结构数组。但它应该返回查询
【发布时间】:2020-05-29 14:28:04
【问题描述】:

我在这里使用 QueryFilter() 函数。我已经了解了这个函数的用法和返回类型。 adobe 文档说它是返回查询。但是示例代码返回 coldfusion2016 中的结构数组。我在 cf2018 中尝试过相同的代码,但它只返回查询。

所以我尝试使用相同的代码 trycf.com。虽然 我在 trycf 中选择了 cf2016,但也只在查询中返回类型。但我不知道为什么我的 cf2016 返回结构数组。我的示例代码。

<cfscript>

    news = queryNew("id,type,title", "integer,varchar,varchar");
    queryAddRow(news,[{
        id: 1,
        type: "book",
        title: "Cloud Atlas"
    },{
        id: 2,
        type: "book",
        title: "Lord of The Rings"
    },{
        id: 3,
        type: "film",
        title: "Men in Black"
    }]);


    books = QueryFilter(news,function(_news) {
        return _news.type is 'book';
    });
    writeDump(books);

</cfscript>

CF2016 在我的本地输出:

CF2018 输出:

请问有人知道这个问题的根本原因吗?

【问题讨论】:

  • 您是否安装了 ColdFusion 2016 的最新更新?
  • 我已经更新到 update10。这是否修复了任何特定更新? @RRK
  • 已在 update11 中解决。我现在有一个返回类型作为查询。谢谢大家和@RRK
  • 你应该把它写下来作为答案。它可能会帮助下一个人解决这个问题。
  • @JamesAMohler 。当然我会把它写在答案部分。谢谢。

标签: coldfusion coldfusion-2016 coldfusion-2018


【解决方案1】:

是的,queryFilter() 应该返回过滤后的查询。我们有一个问题,即在 cf2016 中的 update11 之前返回类型为结构数组。因此,一旦我将我的 cf2016 从 update10 更新到 update11。 它就得到了解决。现在我的 queryFilter() 函数只返回查询。

所以 update11 在 cf2016 中解决了这个问题。谢谢你。

【讨论】:

    猜你喜欢
    • 2014-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多