我从RIAforge下载了Framework/1 并浏览了它.我收到以下错误:
在第81行的第81行找到无效的CFML构造.
ColdFusion正在查看以下文字:
[
CFML编译器正在处理:
Run Code Online (Sandbox Code Playgroud)A script statement beginning with public on line 46, column 9.错误发生在C:\ inetpub\wwwroot\FW1\org\corfield\framework.cfc:第46行
44:}
45:
46:public void function addRoute(
我正在使用cf9.0.0.25.1028
我正在寻找一个在我的ColdFusion网站上使用的捆绑器/缩小器.我搜索了一个多小时,并且只找到了适合cfWheels的插件.不幸的是,我们在这一点上与框架有关,因此我们不能使用该插件.
任何人都可以推荐使用ColdFusion FW1捆绑和缩小我们的js/css的方法吗?
我正在考虑从asp.net的System.Web.Optimization的捆绑器中"借用",但这对我来说似乎过度杀戮.
谢谢!
我有一个Ajax请求,它将一些数据发送到页面,并期望返回一个真实或假的值,具体取决于数据是否已保存.在我的控制器中,我会做所有事情并将内容设置为真或假值.我真的不想创建一个视图只输出1变量,所以我想知道是否有一种方法,我不必使用视图,只使用控制器输出简单的字符串.
我在控制器中有一个看起来像这样的功能
void function edit(required struct rc) output="false" {
...
if (...) {
ArrayAppend(rc.message, "<b>Error:</b> Something did not work right.");
variables.fw.redirect(".home", "all");
return; // ?
}
}
Run Code Online (Sandbox Code Playgroud)
我需要return或重定向意味着返回吗?
我的application.cfc以:
<cfcomponent extends="org.corfield.framework">
稍后的 void function setupApplication() output="false" {
我有
// tools
include "initapp.cfm";
Run Code Online (Sandbox Code Playgroud)
initapp.cfm只有函数.像:
<!--- Helper functions --->
<cfscript>
string function stripHTML(str) output="false" {
return REReplaceNoCase(arguments.str,"<[^>]*>","","ALL");
}
application.stripHTML = stripHTML;
</cfscript>
Run Code Online (Sandbox Code Playgroud)
函数的性质与会话无关.有没有更好的方法让全球的功能可用?
如果需要JSON数据,FW/1似乎是面向返回完整的网页?典型布局如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>User Manager</title>
<link rel="stylesheet" type="text/css" href="assets/css/styles.css" />
</head>
<body>
<h1>User Manager</h1>
<ul class="nav horizontal clear">
<li><a href="index.cfm">Home</a></li>
<li><a href="index.cfm?action=user.list" title="View the list of users">Users</a></li>
<li><a href="index.cfm?action=user.form" title="Fill out form to add new user">Add User</a></li>
<li><a href="index.cfm?reload=true" title="Resets framework cache">Reload</a></li>
</ul>
<br />
<div id="primary">
<cfoutput>#body#</cfoutput>
</div>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我正在尝试为FW/1创建一个轻型脚手架设施.现在我scaffold.cfc在控制器中调用了一个看起来像的文件
<cfcomponent hint="this is expected to be extended, and never used directly">
<cfscript>
function init(fw) { variables.fw = fw; }
void function home (required struct rc) output="false" {
/* TODO: Generic load */
setView("scaffold.home");
}
void function create (required struct rc) output="false" {
/* TODO: Generic create */
setView("scaffold.create");
}
void function show (required struct rc) output="false" {
/* TODO: Generic show */
setView("scaffold.show");
}
Run Code Online (Sandbox Code Playgroud)
...
</cfscript>
</cfcomponent>
Run Code Online (Sandbox Code Playgroud)
我想确保index.cfm?action=scaffold.*或index.cfm/scaffold/*永远不会跑.
这是最好的去处?
我正在创建一个由 FW/1 提供支持的网站。众所周知,每个部分/项目组合都可能需要自己的 JavaScript 文件。我正在考虑将所有 JS 文件放在它们相应的视图文件附近。
views/#getSection()#/#getItem()#.js
我不喜欢我现在从通常是隐藏目录的地方提供文件。特定于部分/项目的 JS 文件的最佳位置是什么
FW/1具有埋藏在其内部的功能
private string function renderDataWithContentType() {
var out = '';
var contentType = '';
var type = request._fw1.renderData.type;
var data = request._fw1.renderData.data;
var statusCode = request._fw1.renderData.statusCode;
switch ( type ) {
case 'json':
contentType = 'application/json; charset=utf-8';
out = serializeJSON( data );
break;
Run Code Online (Sandbox Code Playgroud)
看起来它有一个内置机制来返回application/json,text/xml和text/plain.
我找不到任何关于如何触发这个的文档.
注意:这不是重复:如何从FW/1中的操作返回JSON?