5

g:renderとg:includeの長所と短所について質問があります。私のアプリケーションには、いくつかのgspで繰り返す必要のある情報を表示するコードがあります。表示される内容は、少しのロジックによって異なります。g:includeまたはg:render
を使用する方がよいかどうか疑問があります??? したがって、g:renderに含まれるレイアウトを使用するページにモデルを渡すコントローラーでロジックを実行する方がよいか、またはag:includeを実行するgsp内の別のコントローラーの別のアクションに配置する方が適切です。その作品の論理? 私は2番目の選択肢を好みますが、それはパフォーマンスにどの程度影響しますか?

4

2 に答える 2

9

それらはさまざまな場合に使用されます。<g:include .../>複数のGSPに簡単に埋め込まれるコンテンツを返すコントローラーがある場合に使用します。これは、大量のトラフィックがあり、実際にコントローラーレベルでキャッシュしている場合にも役立ちます。これは、多くのオーバーヘッドを排除できるためです。

<g:render.../>ページ内にモジュール性が必要な場合に便利です。特に、最初にページの一部をロードしてから、AJAXイベントに基づいてそれを更新したいAJAX呼び出しの場合。

どちらもコンテンツを再利用するために使用でき、どちらも適切なコンテキストで適切です。

于 2012-06-14T20:15:48.667 に答える
0

g:renderは、部分的なテンプレートで作業していて、必要なモデルなどがある場合に便利です。ただし、ビュー(テンプレート)に追加のより意味のあるものを渡すために追加の(または大規模な)進行が必要な場合は、 g:includeを使用します。g:includeを使用すると、優れたコントローラーも使用できるようになります。つまり、そのコントローラーを使用すると、コードがはるかに読みやすくなります。また、「コントローラーアクションに渡して、追加の操作を行わずにビューをレンダリングする」と「ビューをレンダリングする」の間にパフォーマンスの比較はありません。

于 2012-06-14T17:48:56.243 に答える