Ruby on Rails: Каковы недостатки Erubis и почему он не упакован с Rails по умолчанию? Как это настроить?

Я только что обнаружил Erubis, замену стандартного средства визуализации представлений для Ruby on Rails. Тем не менее, из того, что я могу сказать, прочитав об этом, он превосходит все.

Это намного быстрее.
У него есть еще много вариантов.
Это может предотвратить межсайтовый скриптинг без использования h.

Есть ли у этого какие-либо недостатки по сравнению со стандартным рендерером erb? Почему это не стандартный рендерер в комплекте с Rails?

Кроме того, в документах для Erubis сказано установить его, просто установив гем, а затем добавить следующее в environment.rb:

require 'erubis/helpers/rails_helper'
#Erubis::Helpers::RailsHelper.engine_class = Erubis::Eruby # or Erubis::FastEruby

Читая документы, FastEruby кажется просто более быстрым рендером, чем Eruby. Почему это не будет по умолчанию и используется всеми?

Я очень заинтересован в использовании движка erubis::EscapedEruby, который автоматически вызывает h, чтобы экранировать html для полей из базы данных. Есть ли какие-то ошибки, о которых я должен знать, или это в значительной степени решает все межсайтовые сценарии?

2 ответа

Команда Rails соглашается. Erubis используется по умолчанию в бета-версиях Rails 3 и будет использоваться по умолчанию после выхода Rails 3. Иегуда Кац упомянул об этом в своем блоге, а Erubis указан как зависимость для Action Pack в текущих бета- версиях Rails 3.

По умолчанию он упакован как гем зависимостей в Rails4. Вы можете найти более подробную информацию здесь: Ruby 2.1 с erubis Template Engine

Другие вопросы по тегам