2010-10-26 2 views
2

Я использую управление деревом в своем приложении GWT. Дерево имеет разные элементы на основе входа пользователя. Один из способов заполнить дерево - это запросить сервер из моего кода GWT, чтобы получить список элементов дерева. Но поскольку элементы всегда будут отображаться, было бы лучше не включать в них информацию о них на самой странице? Я ищу мнения, чтобы достичь этого. Можно ли заставить механизм шаблонов, например django, вставлять эти значения в строковые переменные GWT во время обслуживания? Затем я могу использовать эти строковые переменные для заполнения дерева. Или есть лучший способ достичь этого?GWT задает значения переменных с шаблонами Django

ответ

2

Я ответил на очень похожий вопрос в группе GWT last year, так что вы можете взглянуть туда.


Идея, как вы сказали, это встраивать эти данные внутри страницы хоста, а не выстреливать дополнительный запрос GWT RPC во время инициализации приложения. Вы можете:

  1. Встроить данные внутри переменной JavaScript в вашей странице хоста, и доступ к нему с помощью Dictionary класса

    Это простое решение, особенно если ваши данные сериализации в качестве словаря строк , Вы можете использовать шаблонный движок по своему выбору, чтобы вставить эти данные на свою главную страницу (Django's, Mustache, FreeMarker, JSP ...).

  2. Вставить GWT-RPC полезной нагрузки внутри страницы хоста, как описано here и there

    Это лучше, если вам нужно сериализовать весь граф объекта (который может быть то, что вы хотите для вашего дерева виджета, в зависимости по его сложности). Это похоже на стандартный запрос GWT-RPC, но вместо отправки HTTP-запроса при запуске, ответ GWT-RPC был бы встроен внутри вашей главной страницы, когда вы его обслуживаете.

+1

Это правильный ответ. Другой учебник здесь: http://code.google.com/webtoolkit/articles/dynamic_host_page.html –

+0

Ничего себе, хорошая статья. Не думал об использовании JSNI для доступа к встроенным данным, но это также имеет смысл. –

Смежные вопросы