Rails потоковая передача HTTP с помощью HAML
Похоже, что проблема связана с использованием потоковой передачи HTTP с проектами HAML в рельсах. Он отлично работает, если я использую ERB. По-видимому, я не единственный, у кого эта проблема.
Он не работает с размещением stream
в верхней части контроллера или с использованием render :stream => true
в действии.
Как я могу получить потоки HAML и HTTP, чтобы они хорошо сочетались?
Обновление: Я открыл проблему на странице gem, здесь.
Ответы
Ответ 1
Это еще не поддерживается HAML (source):
HTTP-потоковая передача - это то, что потребует существенного набор модификаций основного двигателя Haml. Это только умеренно сложно заставить его работать даже в основных случаях, но когда вы учитываете вещи, подобные операторам, использующим пробелы, получают гораздо больше трудно.
Это не то, против чего я категорически против, но это также не то, что высоко в моем списке приоритетов, учитывая сложность реализуя его.
Ответ 2
Внутренности Haml таковы, что они действительно записываются в буфер, когда он идет. Тем не менее, "стандартный" API, который Rails традиционно предоставляет для шаблонов языков, является довольно простым вызовом in-and-out. Я не думаю, что у Haml в настоящее время есть "потоковая поддержка", но это просто больше проблема API, чем что-либо еще.
Мне интересно, как Rails подключается к ERB для этого.