Постоянные изменения в Grails не отображаются в приложении - PullRequest
0 голосов
/ 09 марта 2011

Я только что начал разработку учебного пособия по Grama для приложения сегодня и заметил, что при сохранении изменений в объектах домена эти изменения не отражаются сразу во всем приложении.

У меня есть простой объект Account, который используется для входа в приложение, и у меня есть базовые леса Grails, обеспечивающие функциональность CRUD для изменения объекта.

После входа в систему index.gsp отображает приветствие с информацией из объекта «Учетная запись пользователя» (биография, описание и т. Д.), Однако, если я изменю описание Учетной записи (используя CRUD в скаффолде) и вернусь к индексу, изменение не произойдет. отражено (хотя, если я просматриваю страницу list.gsp по умолчанию для Аккаунтов, изменение отражается там).

--- EDIT ---

Объект домена учетной записи - это объект, который мы используем для аутентификации / входа в систему. Пример индекса синпета выглядит так:

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

Это просто отображает приветствие для пользователя. Однако, если я перехожу на страницу CRUD контроллера учетной записи и изменяю имя пользователя (логин), то это не отражается в индексе (даже после полного обновления браузера). Я заметил, что если я оставлю это, чтобы закончить сеанс, и затем войду снова, это все хорошо. Должен ли я получить объект учетной записи каким-либо способом, отличным от session.user?

Я что-то упускаю из виду?

Спасибо

Ответы [ 2 ]

0 голосов
/ 16 марта 2011

ОК, я решил это - поэтому файл session.user не обновлялся во время сеанса.

Я только что создал пользовательский tagLib, чтобы получить текущего пользователя и отобразить соответствующие детали, а не пытаться извлечь их прямо из session.user ..

0 голосов
/ 10 марта 2011

Ну, я знаю Начало работы с Grails . Это очень хорошо для начала, хотя есть некоторые не обновленные детали. Насколько я помню, на домашней странице по умолчанию есть информация о контроллерах, а не какой-либо объект домена?

По поводу вашего вопроса, я думаю, вы должны проверить код домашней веб-страницы / и файла контроллера. Это в \grails-app\views и \grails-app\controller.

...