Обновление части формы макета с частичным из JQuery - PullRequest
1 голос
/ 31 октября 2011

У меня есть форма макета рельсов с несколькими частями, составляющими страницу:

Layout:
  Header (partial)
  Left tree (partial)
  Main area (partial)

Когда пользователь вносит изменения в основную область, я хочу обновить левое дерево (которое является частичным), чтобы представить изменение. Я бы сделал это с ajax, но как бы я использовал обновить его с частичным (проблема в том, как вернуть частичное из контроллера, который может использоваться функцией JQuery).

Johann

1 Ответ

2 голосов
/ 31 октября 2011

Как я понимаю, у вас есть 2½ возможностей:

  • Создать новое действие контроллера, чтобы возвращать только этот частичный без макет
  • Или повторно использовать существующее действие контроллера и вернуть частично, если действие запрашивается с использованием запроса xhr.
  • Используйте шаблон Javascript, такой как усы, haml-js или ejs

Первый вариант немного странный, но несколько приемлемый IMO. Вы также можете проверить виджеты в этом случае: http://apotomo.de/

Второй вариант похож на первый, но не совсем приемлемый IMO, поскольку вы возвращаете разные вещи из одной и той же "конечной точки".

Последний подход кажется лучшим, но может быть немного излишним, в зависимости от вашего приложения. Таким образом, ваш контроллер может возвращать только JSON, и вы отображаете представление в клиенте. В зависимости от того, как структурировано ваше приложение, вы можете захотеть взглянуть на решение Javascript MVC, такое как Backbone .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...