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()ます。ただし、通常、オブジェクトはすでにラップされています。