2011-03-09 65 views
0

我刚刚开始从教程开发Grails应用程序,现在我注意到,当我将更改保存到Domain对象时,更改没有在整个应用程序中立即反映出来。Grails中保留的更改未在应用程序中显示

我有一个简单的Account对象,用于登录到应用程序,我有基本的Grails脚手架提供CRUD功能来更改对象。

登录后,index.gsp显示欢迎信息,包含来自用户的Account对象(传记,描述等)的信息 - 但是,如果我更改帐户描述(使用脚手架CRUD)并返回索引,则更改为没有反映(虽然如果我查看帐户的默认list.gsp页更改反映在那里)。

---编辑---

帐户域对象是我们使用与邻认证/登录的对象。
的一个实例指数sinppet看起来是这样的:

<p class="header">${session.user.login}'s Profile</p> 

这只是显示一个欢迎用户 - 但是,如果我去帐户控制CRUD页面,更改用户名(登录),那么它不反映在索引中(甚至在完全刷新浏览器之后)。我已经注意到,如果我让它过期会话,然后再次登录,这是很好的..我应该通过session.user以外的某种方式获取帐户对象?

我错过了一些明显的东西吗?

感谢

+1

也许一个愚蠢的问题,但是当你回到指数,是你真的刷新页面或只是使用后退按钮? – Gregg 2011-03-09 18:38:18

+0

我曾尝试使用脚手架“home”按钮以及在索引页上进行硬刷新。 – rhinds 2011-03-09 18:47:03

+0

什么版本的Grails?你正在使用什么教程(链接?) – Gregg 2011-03-09 18:49:28

回答

0

好的,我解决了这个问题 - 所以session.user没有被更新会话。

我刚刚创建一个自定义标签库,以获得当前用户,并显示相关的细节,而不是尝试从session.user直接提取出来..

0

嗯,我知道Getting Started with Grails。这对初学者非常有用,虽然有一些未更新的细节。我记得,它的默认主页有关于控制器的信息,但没有任何域对象?

关于你的问题,我想你应该检查家庭网页/和控制器文件的代码。它在\grails-app\views\grails-app\controller

+0

感谢Hoang,我查看了视图和控制器,它们只是为基本CRUD操作生成的脚手架代码。 – rhinds 2011-03-15 21:35:22