【问题标题】:Coldfusion moving JSON files to a folder breaks the page (relative path)Coldfusion 将 JSON 文件移动到文件夹会破坏页面(相对路径)
【发布时间】:2018-06-28 04:06:06
【问题描述】:

我的第一个问题。如果我需要学习一些东西,请随时喊叫。我一直在这个网站,土坯以及互联网。我认为我的问题是如此基本,以至于没有人问过它。我的专长是 VBA/Excel/SQL,我是一个 100% 的菜鸟:CF 和通用网络编码,就是这样。但我真的很努力。

我的任务是维护/更新在 CF 2016 版本上运行的 Web 应用程序。第一项任务是更新从 CF11 迁移到新版本时损坏的现有图表。我根据 zingcharts 对 JSON 文件执行此操作,当 JSON 文件与页面的 .cfm 文件位于同一目录中时,图表显示正常。美丽的。可能是有史以来最好的图表。所以这部分是有效的。

这是我访问所有 CF 文件时的文件夹结构:

D:\Websites\dev\pages\~cfm & json 文件~

这就是我现在设置它以将 JSON 文件抓取到样式变量名称中的方式:

    <!--- set JSON files for chart data--->
    <cfset dataDirectory = getDirectoryFromPath(getCurrentTemplatePath())/>
    and then:
    <cfset bargraph.JSON=deserializeJSON(fileRead("#dataDirectory#bargraph.json"))>

当然,其中包含 .cfm 文件的文件夹越来越拥挤。所以我在同一级别创建了一个 JSON 文件夹,我想我希望我的结构看起来像:

D:\Websites\dev\pages\json\

所以我把事情改成:

    <cfset dataDirectory = getDirectoryFromPath(#ExpandPath( "../json/" )#)/>

并收到此错误:

D:\Websites\dev\json\bargraph.json(系统找不到指定的路径)

一个目录太高了。所以我把它改成:

    <cfset dataDirectory = getDirectoryFromPath(#ExpandPath( "./json/" )#)/>

No more file not found 错误,但页面在所有 JSON“cfset”语句结束时停止加载。

我错过了什么?谢谢大家。这些年来你帮助了我很多次。

【问题讨论】:

    标签: file path coldfusion coldfusion-2016


    【解决方案1】:

    这更像是一个评论而不是一个问题,但这里是。

    您的页面位于:

    D:\Websites\dev\pages\mypage.cfm

    你正试图在

    处获取一个 JSON 文件

    D:\Websites\dev\pages\json\bargraph.json

    你有没有试过从路径

    dataDirectory =  GetDirectoryFromPath(GetCurrentTemplatePath()) & "json/";
    

    【讨论】:

    • 非常感谢您的建议。它似乎和以前一样工作。 No file not found 错误,但设置变量后页面仍然停止加载。啊。再次感谢!
    • 页面停止加载。唔。尝试在 set 语句之前和之后放入一些虚拟内容。看看它是否真的停止。还可以考虑在application.cfc 中有一个变量,它总是知道它在哪里。然后将所有内容都基于应用程序范围的变量。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-26
    • 2013-08-19
    • 2019-08-10
    • 1970-01-01
    • 1970-01-01
    • 2019-09-21
    相关资源
    最近更新 更多