Ruby on Rails: Каковы недостатки Erubis и почему он не упакован с Rails по умолчанию? Как это настроить? - PullRequest
7 голосов
/ 23 мая 2010

Я только что обнаружил 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 ]

10 голосов
/ 23 мая 2010

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

0 голосов
/ 29 декабря 2014

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

...