1

ビューに AJAX 呼び出しがあり、

var ajaxData= $.ajax({
type: "GET",
url: "${createLink(controller:'profile',action:'ajaxList')}",
success: function(data) {
    }  
});

この呼び出しから「データ」を返すために、ProfileController.groovy クラスにメソッドを作成しましたが、コントローラーを正しくフォーマットする方法がわかりません。ここに私が返したいものがあります。モデル、プロファイルには、名前と説明があります。キーが名前で、値が説明であるハッシュオブジェクトを返したいです。このajax呼び出しがそのハッシュを返すように、コントローラーでこれを行う方法はありますか? どんな助けでも感謝します。ありがとう!

4

1 に答える 1

2

コントローラーのajaxListアクションで、通常どおり、モデルを必要に応じて構築return modelし、最後にrender model as JSON.

例えば、

class ProfileController {
    def ajaxList() {
        def profiles = Profile.list()
        def model = profiles.collect { [(it.name): it.description] }
        render model as JSON
    }
}

listまた、同じアクションを使用して異なる形式を返したい場合は、 using を参照してwithFormatください。

于 2012-06-11T18:55:56.163 に答える