我正在使用sitecore。对于一个项目,我创建了一个带有简单类型整数字段的模板。此整数字段的默认值为0.
当我基于此模板创建一个值为0(默认值)的新项目时,它不会显示。通过将默认值更改为1(例如),将显示该值。有谁知道如何解决这个问题?
非常感谢。
的Jordy
答案 0 :(得分:7)
Sitecore 不会忽略默认值0
。价值' 0'存储在 Sitecore 中的Integer
字段,此字段不会显示,因为这是int
类型的默认值(或者long
因为我知道该值被解析为long
)。
如果您更改为显示Raw values
,则会显示该值。
如果您从代码中访问此字段值,您将获得0
。
答案 1 :(得分:2)
这真的很奇怪 我也可以使用最新版本的Sitecore 7.2重现它。
我建议您就此问题与Sitecore支持小组联系,因为它可能是个错误。
在此期间,只需使用Number
字段而不是Integer
由于某种原因,它可以正确使用该字段类型
唯一的副作用是它也会接受小数值......
您可以通过将此正则表达式添加到字段项的Validation
字段来解决此问题:^\d+$
答案 2 :(得分:1)
Sitecore不会忽略值0.它只是没有向用户显示它的全部,但它的值将在数据库中存储为0,如果从代码中访问该字段的值,它将给出0作为结果。如果要检查,可以查看dbbrowser,它将值显示为0.要查看dbbrowser,请转到
<URL Address>
/ Sitecore的/管理/ login.aspx的
以sitecore \ <user id>
转到该项并检查字段的值