0

テンプレートをレンダリングするコントローラーのメソッドがあります。これは、.gspビュー内でテンプレートをレンダリングするために正常に機能します。

私もmail-pluginを使用していますが、同じコントローラーの関数を使用してテンプレートを電子メールでレンダリングしたいので、いくつかの電子メールにそれを入力します。

私はAjaxリクエストを介して.gspビューからそれを行う方法を知っていますが、コントローラーまたはサービス内からそれを行う方法を知りません。アイデアは、コントローラーのアクションを関数のように使用し、レンダリングされたteplateを取得して、電子メールにそれを入力することです。また、コントローラーのアクションが正しく機能するには、いくつかの「params」プロパティが必要です。

どんな提案でも大歓迎です。

よろしく、

4

1 に答える 1

2

render タグ ( http://grails.org/doc/latest/ref/Tags/render.html ) を使用して文字列を返すことができます。

再利用可能なコントローラー内のロジックをサービスに移動し、これを使用してモデルを返すと、次の方法で簡単に呼び出すことができます。

def model = myService.method( ... )
def emailContent = g.render( template: 'mytemplate', model: model) 
于 2011-11-22T20:46:33.697 に答える