1

Archetypes コンテンツ (例: ATNewsItem)のgetRawSomethingとメソッドの違いは何ですか?getSomething

getRawImageたとえば、との違いは何getImageですか? それとも?getRawRelatedItems_ getRelatedItems

4

1 に答える 1

3

getRaw*オブジェクトに保存されている未処理の生データを直接提供します。メソッドは、get*必要に応じて何らかの方法でそのデータを変換することができます。

たとえば、TextFieldフィールドは を使用するとテキストを安全な HTML に変換しますgetgetRaw()、マークダウン、再構築されたテキスト、または未処理の HTML など、変換されていないデータを提供します。

開発者ドキュメントから:

Archetypes には 2 種類のアクセス方法があります。

  • 通常、getSomething()出力をフィルタリングします。
  • raw、いわゆる edit アクセサーで、getRawSomething()出力をフィルタリングしません。

フィールドの現在の内容を編集する場合は を使用しgetRaw*、内容をレンダリングする場合は を使用しますget*

具体的には、関連項目は参照フィールドに格納されます。getRaw()メソッドはオブジェクト UID を返し、get()メソッドは最初に UID を解決してオブジェクトを返します。

イメージ フィールドは、ファイル フィールドと同様に、関連付けられたオブジェクト タイプ (OFS.Imageイメージ フィールドの場合) でデータをラップしますが、使用時にそのタイプがまだない場合は.get()、基になるストレージが取得したものを返し.getRaw()ます。ただし、通常、オブジェクトはすでにラップされています。

于 2013-07-08T13:47:56.990 に答える