使用Grails,如何在不同的请求/控制器操作之间保留信息

时间:2011-05-20 19:21:58

标签: http data-binding grails controllers

我有一个像这样的控制器:

def save = {
        def conferenceUser = new ConferenceUser()

        def conf_1 = Conference.get(params.conference.id)
        def role_1 = Role.get(params.role.id)
        def status_1 = Status.get(params.status.id)
        def user_1 = User.get(params.user.id)

        conferenceUser.conference = conf_1

        conferenceUser.dateParticipated = params.dateParticipated
        conferenceUser.accepted = params.accepted

        conferenceUser.status = status_1
        conferenceUser.role = role_1
        conferenceUser.user = user_1


          if (!conferenceUser.save(failOnError: true)) {
        render (view: 'participatedAdd', model : [conferenceUser: conferenceUser])
        return

       render(view: 'participatedAdd2', model: [conferenceUser: conferenceUser])

  }
}

基本上,这是我的两步注册阶段的保存控制器。我希望能够在保存第一部分后加载第二个视图(joinedAdd2),但我需要为下一个控制器操作保留conferenceUser.conference值。如何在我的第二个save2控制器操作中访问此值?

1 个答案:

答案 0 :(得分:3)

participatedAdd2视图中,输入

<input type="hidden" name="conferenceUserId" value="${conferenceUser.id}"/>
提交到save2操作的表单中的

。然后,您可以使用以下内容在ConferenceUser操作中查找save2

def conferenceUser = ConferenceUser.get(params.conferenceUserId)