Релсите се формират над Twitter Bootstrap modal

Опитвам се да създам абонамент за бюлетин от нулата, използвайки rails 4 и Twitter Bootstrap 3 modal.

Създадох модел на абонат и контролер на абонати, който съдържа метод „създаване“.

Бутонът, който отваря модала, трябва да се появи по всяко време, така че го включих в навигационната лента, която е поставена във файла за изглед на оформление application.html.erb.

Това е кодът, който използвах за модала: (във views/layout/application.html.erb)

<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
      <div class="modal-dialog">
        <div class="modal-content">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
            <h4 class="modal-title" id="myModalLabel">Newsletter Subscriptions</h4>
          </div>
          <% form_tag(controller: 'subscribers', action: 'create') do %>
              <div class="modal-body">              
                    <p><%= text_field_tag :email, params[:email] placeholder: "Enter your email address" %></p>             
              </div>
              <div class="modal-footer">
                 <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                <p><%= submit_tag "Subscribe", class: "btn btn-primary" %></p>                  
              </div>
          <% end %>
        </div>
      </div>
    </div>

По някаква причина няма да покаже нищо в модала освен заглавието. Къде греша?




Отговори (1)


Просто трябва да използвате <%= form_tag вместо <% form_tag. В предишните версии на Rails, <% form_tag се използва според мен, но тъй като form_tag извежда html, трябва да се използва с <%= %>.

person Robin    schedule 18.09.2014