Как настроить количество строк в моем rich_text_area для simple_form? - PullRequest
0 голосов
/ 29 апреля 2020

Я использую SimpleForm 5.0.2 вместе с ActionText.

Я бы хотел, чтобы поле основного тела моей формы состояло из нескольких строк (скажем, 10), но я не могу понять, как его получить работа.

Это моя текущая попытка:

<%= f.rich_text_area :body, class: 'form-control', name: "article-text", input_html: { rows: 10 }, placeholder: "Enter your article body here..." %>

, которая производит это HTML:

<trix-editor class="form-control" input_html="{:rows=>10}" placeholder="Enter your article body here..." id="article_body" input="article_body_trix_input_article" data-direct-upload-url="http://localhost:3000/rails/active_storage/direct_uploads" data-blob-url-template="http://localhost:3000/rails/active_storage/blobs/:signed_id/:filename" contenteditable="" role="textbox" trix-id="1" toolbar="trix-toolbar-1"></trix-editor>

Что выглядит так:

simple-form-rich-text-area

Обратите внимание, что я также пробовал различные итерации input_html:, включая, но не ограничиваясь:

<%= ... input_html: { 'rows': '10' } ... %>

<%= ... input_html: { rows: "10" } ... %>

Все безрезультатно.

Как мне заставить это работать?

1 Ответ

1 голос
/ 29 апреля 2020

Похоже, rich_text_area принимает только вариант :class, поэтому :input_html здесь ничего не делает. Но так как высота определяется CSS, мы можем достичь того, что вы хотите, переопределив стандартную минимальную высоту CSS trix-editor.

В app / assets / stylesheets / actiontext. s css

trix-editor {
  &.customized-min-height {
    min-height: 15em;
  }
}

В вашем представлении файл

f.rich_text_area :body, class: "form-control customized-min-height"
...