为什么我的数据库中的空字符串不返回returnFormat = JSON

时间:2010-07-01 17:13:02

标签: json orm coldfusion null

{
MESSAGE = LoginWelcomeBackMessage;
SUCCESS = 1;
USER =     {
    AcceptAllFriendRequests = 0;
    CreateDate = "June, 07 2010 00:00:00";
    DayOfBirth = "April, 24 1974 00:00:00";
    UserName = "Erik Madsen";
};
}

我的CFC定义了我的数据库表中的所有列,但是当列为NULL时,该字段不会作为JSON中的属性返回?上面的例子应该有PersonalInfo =“”;有没有办法强制它返回一个空字符串?

2 个答案:

答案 0 :(得分:1)

数据库列中的空字符串与列中的NULL不同。

看一下这篇文章:http://www.bennadel.com/blog/1654-Learning-ColdFusion-9-IsNull-And-Working-With-NULL-Values.htm

通常,您可能希望使用ISNULL(col,'')或COALESCE(col,'')将这些包装在数据库中(在视图或计算列中),或者在从数据库中提取后处理这些文章作为文章讨论。或者甚至不允许数据库中的NULL,而是需要空字符串。

答案 1 :(得分:1)

在大多数情况下,简单地离开房产可能比空字符串更接近null。如果你想要一个空字符串,你应该返回一个空字符串。如何处理空值取决于您的序列化程序。

在javascript中,官方实现处理得非常好:

var a = { b: null };
console.log( JSON.stringify(a) ); // logs '{"b":null}'