Archetypes コンテンツ (例: ATNewsItem)のgetRawSomething
とメソッドの違いは何ですか?getSomething
getRawImage
たとえば、との違いは何getImage
ですか? それとも?getRawRelatedItems
_ getRelatedItems
等
Archetypes コンテンツ (例: ATNewsItem)のgetRawSomething
とメソッドの違いは何ですか?getSomething
getRawImage
たとえば、との違いは何getImage
ですか? それとも?getRawRelatedItems
_ getRelatedItems
等
getRaw*
オブジェクトに保存されている未処理の生データを直接提供します。メソッドは、get*
必要に応じて何らかの方法でそのデータを変換することができます。
たとえば、TextField
フィールドは を使用するとテキストを安全な HTML に変換しますget
がgetRaw()
、マークダウン、再構築されたテキスト、または未処理の HTML など、変換されていないデータを提供します。
開発者ドキュメントから:
Archetypes には 2 種類のアクセス方法があります。
- 通常、
getSomething()
出力をフィルタリングします。- raw、いわゆる edit アクセサーで、
getRawSomething()
出力をフィルタリングしません。
フィールドの現在の内容を編集する場合は を使用しgetRaw*
、内容をレンダリングする場合は を使用しますget*
。
具体的には、関連項目は参照フィールドに格納されます。getRaw()
メソッドはオブジェクト UID を返し、get()
メソッドは最初に UID を解決してオブジェクトを返します。
イメージ フィールドは、ファイル フィールドと同様に、関連付けられたオブジェクト タイプ (OFS.Image
イメージ フィールドの場合) でデータをラップしますが、使用時にそのタイプがまだない場合は.get()
、基になるストレージが取得したものを返し.getRaw()
ます。ただし、通常、オブジェクトはすでにラップされています。