2014-12-02 29 views
1

我刚刚在我们的应用程序中使用application.cfc文件,其中一些似乎没有工作,我无法弄清楚原因。我曾尝试cfdump“应用程序”。我得到Application.DSN,Application.USERNAME,Application.Password,但不Application.SYSTEMPATH或Application.ACCOUNT如何在application.cfc中创建应用程序变量

<cffunction name="onApplicationStart"> 
    <cfscript> 
    Application.availableResources=0; 
    Application.DSN = "XXX"; 
    Application.USERNAME = "XXX" ; 
    Application.PASSWORD = "XXX"; 
    Application.SYSTEMPATH = "http://example.com/"; // This doesn't work 
    Application.ACCOUNT = XXX; // This doesn't work. 
    Application.counter1=1; 
    Application.sessions=0; 
    </cfscript> 
</cffunction> 
+2

术语“不起作用”非常含糊。这是什么意思? – 2014-12-02 17:05:42

+4

另外,如果添加了其他应用程序变量,*创建该方法后,需要在定义新变量之前重新启动“应用程序”。 – Leigh 2014-12-02 17:11:00

+0

如何重新启动onApplicationStart?我必须重新启动服务器吗? – 2014-12-02 17:55:24

回答

0

我想你想要这样的:

Application.SYSTEMPATH = GetDirectoryFromPath(GetCurrentTemplatePath());

这将工作太:

Application.SYSTEMPATH = expandPath('./');

现在这个...

Application.ACCOUNT = XXX; //这不起作用。 (因为它假设XXX是一个变量)。

你需要这样的:

XXX = 'something';XXX = 1;或者是因为它没有用处完全删除。

然后当你调用:

Application.ACCOUNT = XXX;它不会给你的错误。

或者你可以跳过它,这样做:

Application.ACCOUNT = 'something';(串) Application.ACCOUNT = 1;(数字)

然后,它会不会散架(因为XXX是一个变量不是一个值,你不能调用一个不存在的变量)。如果你有一个“变量”,它必须有一个“值”(变量/值对),或者至少设置一个占位符,如XXX=0;XXX='';,如果你必须拥有它。

我杀死了这个变量/值死马死吗?大声笑...:D

笑话旁边让我们知道如果你有关于你的应用程序变量的另一个问题,因为有些看起来没有必要(虽然不能判断)。

+0

我把XXX标示为一个整数。对不起,关于混淆 – 2014-12-02 17:56:07

+0

啊......没问题。 :) – 2014-12-02 17:56:38

相关问题