2

過去にGrails Rendering Pluginを使用して、PDF の作成に多くの成功を収めました。ここで、gsp を使用して単純なテキスト ファイルを作成したいと思います。モデルを使用して、テンプレートに情報を挿入する方法を簡単に定義できる点が気に入りました。テキスト ファイルをレンダリングする必要がないことはわかっていますが、テンプレートを使用して通常のテキスト ファイルを作成する同様の方法はありますか?

Grails Render Plugin を使用して jpg をレンダリングする方法の例: (モデルの使用に注意してください)

    def bytes = gifRenderingService.render(template: '/images/coupon', model: [serial: 12345])
// Render to a file
    new File("coupon.jpg").withOutputStream { outputStream ->
        jpegRenderingService.render(template: '/images/coupon', model: [serial: 12345])
    }

上記の例のような簡単な方法がない場合、私の情報は複数のドメイン クラスから取得<g>されているため、必要な条件に基づいて取得する gsp テンプレートにタグを作成するだけでよいでしょうか? その場合..サービスからgspテンプレートに変数を挿入するにはどうすればよいですか?

4

4 に答える 4

4

grails.gsp.PageRendererユーティリティクラスをご覧ください。.gspテンプレートをString:としてレンダリングできます。

String gspOutput = groovyPageRenderer.render(view: '<your view>.gsp', model: [ modelObj1: ... ])

...または直接WriterまたはOutputStream

groovyPageRenderer.renderTo(view: '<your view>.gsp', model: [ modelObj1: ... ], <writer or OS>)

詳細については、こちらをご覧ください:http: //mrhaki.blogspot.com/2012/03/grails-goodness-render-gsp-views-and.html

于 2013-03-08T21:35:54.687 に答える
0

<g> タグなどを使用してテキスト テンプレートを標準として作成し、そのテンプレートで「text/plain」の contentType を使用して標準の grails render() 関数を呼び出すだけだと思います。プラグインは不要ですか?

于 2013-03-08T20:01:28.240 に答える
0

テンプレートをテキスト ファイルとしてレンダリングするには、応答のコンテンツ タイプを text/plain に設定する必要があります。

于 2013-03-08T19:57:37.127 に答える
0

次のコードを GSP ファイルに追加します。

<%@page contentType="text/plain"%>
于 2016-10-05T16:30:05.107 に答える