Nandita
Nandita

Reputation: 307

how can i render to the gsp view of other controller?

I m new to grails,just started with a small application,

I'm searching a solution for below problem,

Can any one tell me how can i render to GSP view page of other controller from current controller view page.

With advance Thanks, Laxmi.P

Upvotes: 8

Views: 27495

Answers (3)

Victor Sergienko
Victor Sergienko

Reputation: 13475

You can use either render(view: '/ctrlr/action', model: [fooInstance: foo]) or redirect(controller: 'ctrlr', action: 'action') controller dynamic methods in your action, depending on if you need to user a model you already have, or to completely redirect to that action's logic.

If you're asking about GSP code, there is a render tag.

Upvotes: 16

Nirmal
Nirmal

Reputation: 4829

Lets suppose you want to render finalView.gsp of FirstController from normalView.gsp of SecondController having the following structure :

FirstController.groovy
   finalView.gsp
SecondController.groovy
   normalView.gsp

normalView.gsp will have :

<g:link controller="SecondController" action="redirectToFirstController">Redirect to finalView.gsp </g:link>

Then inside your SecondController, define one action called redirectToFirstController

def redirectToFirstController =  {
 redirect(controller:"FirstController",action:"renderFinalView")
}

And inside your FirstController:

def renderFinalView = {
render(view:"finalView");
}

Upvotes: 11

mjspier
mjspier

Reputation: 6526

not quite sure but I think you have to use ModelAndView Class.

return new ModelAndView("/controller/view", [ model : youModel ])

Upvotes: 1

Related Questions