Plone getRawSomething和getSomething方法在原型内容(例如ATNewsItem)上有什么区别?

Plone getRawSomething和getSomething方法在原型内容(例如ATNewsItem)上有什么区别?,plone,archetypes,Plone,Archetypes,getRawSomething和getSomething方法在原型内容(如ATNewsItem)上有什么区别 例如,getRawImage和getImage之间有什么区别?或者getRawRelatedItems和getRelatedItems?等等。getRaw*提供存储在对象上的直接、未经处理的原始数据。允许使用get*方法根据需要以某种方式转换数据 例如,TextField字段在使用get时会将文本转换为安全的HTML,但是getRaw()会提供未转换的数据,包括标记、重新构造的文本或未处

getRawSomething
getSomething
方法在原型内容(如ATNewsItem)上有什么区别


例如,
getRawImage
getImage
之间有什么区别?或者
getRawRelatedItems
getRelatedItems
?等等。

getRaw*
提供存储在对象上的直接、未经处理的原始数据。允许使用
get*
方法根据需要以某种方式转换数据

例如,
TextField
字段在使用
get
时会将文本转换为安全的HTML,但是
getRaw()
会提供未转换的数据,包括标记、重新构造的文本或未处理的HTML

从:

原型有两种访问方法:

  • 正常,
    getSomething()
    ,用于过滤输出
  • raw,即所谓的编辑访问器,
    getRawSomething()
    ,它不过滤输出
如果要编辑字段的当前内容,请使用
getRaw*
,如果要呈现内容,请使用
get*

具体来说,相关项存储在引用字段中,
getRaw()
方法返回对象UID,
get()
方法返回对象,首先为您解析UID

使用
.get()
时,图像字段(如文件字段)将以相关对象类型(
OFS.Image
表示图像字段)包装数据(如果尚未使用该类型),但返回基础存储为
.getRaw()
获得的任何数据。但通常对象已经被包装好了