1
你好(對不起,我的英文不好),Grails的RemoteLink和餅乾
我有一個問題,這似乎很簡單: 我想用remoteLink設置cookie和響應使用cookie值。 效率不高,因爲我必須在鏈接上點擊兩次才能獲得正確的行爲。 我懷疑這是因爲cookie值是在模板調用後發送的。
這裏我GSP:
${agence.delegation}
<small>
<g:if test="${cookie(name:'delegationId') == agence.id.toString()}">
<g:remoteLink controller="docDelegationSite"
action="deleteDefaultAgency"
update="defautAgencyId"
params="${[delegationId: agence.id]}">
Changer d'agence par défaut
</g:remoteLink>
</g:if>
<g:else>
<g:remoteLink controller="docDelegationSite"
action="defineDefaultAgency"
update="defautAgencyId"
params="${[delegationId: agence.id]}">
Définir comme agence par défaut.
</g:remoteLink>
</g:else>
</small>
這裏我的控制器:
def defineDefaultAgency() {
def agence = DocDelegationSite.read(params.delegationId)
cookieService.setCookie(response, 'delegationId', params.delegationId)
render template: '/docDelegationSite/delegationCookie',
model: [agence: agence]
}
def deleteDefaultAgency() {
def agence = DocDelegationSite.read(params.delegationId)
cookieService.setCookie(response, 'delegationId', null)
render template: '/docDelegationSite/delegationCookie',
model: [agence: agence]
}
那麼,如何TE確保cookie的值是模板的調用之前發出?