Как использовать rich_text_area с simple_form в Ruby на Rails 6? - PullRequest
1 голос
/ 06 мая 2020

На данный момент simple_form не поддерживает ruby на rails 6 action_text с полем ввода rich_text_area. Итак, на данный момент мое поле ввода может выглядеть следующим образом: posts / _form. html .haml:

= f.label :description
= f.rich_text_area :description
= f.error :description, class: 'text-danger'

Как заставить его работать как = f.input :description и иметь область расширенного текста?

1 Ответ

3 голосов
/ 06 мая 2020

создать файл в app / inputs / rich_text_area_input.rb:

class RichTextAreaInput < SimpleForm::Inputs::Base
  def input_html_classes
    super.push('trix-content')
  end

  def input(wrapper_options = nil)
    merged_input_options = merge_wrapper_options(input_html_options, wrapper_options)

    @builder.rich_text_area(attribute_name, merged_input_options)
  end
end

в application.s css:

//simple_form input for rich_text_area hight
trix-editor.form-control {
  height: auto;
}

Теперь в сообщениях / _form. html .haml, вы можете просто сделать:

= f.input :description, as: :rich_text_area

Все, надеюсь, в какой-то момент simple_form должен добавить его в мастер

Источник 1: https://github.com/heartcombo/simple_form/issues/1638

Источник 2: https://github.com/heartcombo/simple_form/pull/1646

...