Отображение формы по горизонтали с помощью form_for, Ruby on Rails, twitter bootstrap - PullRequest
0 голосов
/ 29 мая 2020

Следуя руководству Ruby on Rails, и приведенный ниже код должен отображать форму по горизонтали.

<div class="row">
  <div class="col-md-12">
    <%= form_for(@recipe, :html => {class: "form-horizontal", role: "form"}) do |f| %>
      <div class="form-group">
        <div class="control-label col-md-2">
          <%= f.label :name %>
        </div>
        <div class="col-md-8">
          <%= f.text_field :name, class: "form-control", placeholder: "Name of recipe", autofocus: true %>
        </div>
      </div>
    <% end %>
  </div>
</div>

Однако форма по-прежнему отображается вертикально. Я пробовал этот ответ с помощью фрагмента wrapper, но все еще не работает: Как создавать горизонтальные формы с помощью twitter bootstrap и простой формы рельсов .

Я прочитал по этой ссылке : https://guides.rubyonrails.org/form_helpers.html, этот form_for теперь нерекомендуется. Вот почему? И если да, то как я могу использовать form_with для достижения того же результата.

Сравнение: ожидаемое против результат

1 Ответ

0 голосов
/ 29 мая 2020

вот образец для вашего случая

<div class="row">
  <div class="col-md-12">
    <%= form_for(@recipe, :html => {class: "form-horizontal", role: "form"}) do |f| %>
      <div class="row form-group">
        <%= f.label :name, :class => 'control-label col-md-2' %>
        <div class="col-md-8">
          <%= f.text_field :name, class: "form-control", placeholder: "Name of recipe", autofocus: true %>
        </div>
      </div>
    <% end %>
  </div>
</div>
...