0

Вот код, у меня есть для моего модального окна он находится в просмотрах/DEViSE/регистрации/_newfile.html.erb папкаModal в моем заголовке вместо основного корпуса

<li><a data-toggle="modal" href="#normalModal" id="secondtry" class="btn btn-success btn outline">sign up</a></li> 

<div id="normalModal" class="modal fade" data-toggle="modal"> 
    <div class="modal-dialog"> 
    <div class="modal-content">  
     <div class="panel panel-default"> 
     <div class="panel-heading"> 
      <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> 
      <h1 class="modal-title">Signup to sharebox</h1> 
     </div> 
     <div class="modal-body"> 
      <%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %> 
      <div class="form-group"> 
      <%= f.label :email %><br /> 
      <%= f.email_field :email, autofocus: true, class: "form-control" %> 
      </div> 
      <% end %> 
      <%= render "devise/shared/links" %> 
     </div> 
     </div> 
    </div><!-- /.modal-content --> 
    </div><!-- /.modal-dialog --> 
</div><!-- /.modal --> 

Этих это кнопка, что эта форма делает

the resulted button

при нажатии она дает правильное модальное окно, которое появляется в виде всплывающего окна, а экран на заднем плане темнеет, как и положено, все работает отлично. the modal window

Вопрос: Как поставить эту кнопку на моей навигационной панели, в заголовке? который находится в просмотрах/макеты/_header.html.erb, (мой макетов/application.erb файл называет это частичный)

Я пытался поставить в моем _header частичного этого код

<nav> 
     <div class="collapse navbar-collapse navbar-ex1-collapse"> 
     <ul class="nav navbar-nav navbar-right"> 
      <li><%= link_to "log in", user_session_path, id: "menu-overwritten-loggedout", class: "btn btn-success btn outline" %></li> 
      <li><%= render "users/registrations/newfile" %></li> 
      <% end %> 
     </ul> 
     </div> 
    </nav> 

Как вы видите, я использовал <%= render "users/registrations/newfile" %> и форма появилась буквально в моей навигационной панели, когда я нажимаю на кнопку Подписать вверх modal form in in navbar

когда он на самом деле должен отображаться в основном макете, поэтому кнопка находится в моем заголовке, но форма должна отображаться в основном корпусе или макете. как я могу это исправить?

спасибо

ответ

1

Я думаю, что вам нужно, чтобы показать диалоговое окно Регистрация в любом месте сайта, где находится кнопка SignUp в навигационной панели. Так что для этого сделать эти изменения в коде:

<nav> 
    <div class="collapse navbar-collapse navbar-ex1-collapse"> 
    <ul class="nav navbar-nav navbar-right"> 
     <li><%= link_to "log in", user_session_path, id: "menu-overwritten-loggedout", class: "btn btn-success btn outline" %></li> 
     <li><a data-toggle="modal" href="#normalModal" id="secondtry" class="btn btn-success btn outline">sign up</a></li> 
     <% end %> 
    </ul> 
    </div> 
</nav> 

И вне этого нав, где тело визуализируется с использованием <%= yield %> или в контейнере независимо от вашего макета, используя для основного корпуса, в который добавить

<%= render "users/registrations/newfile" %> 

И от этого частичного REMOVE:

<li><a data-toggle="modal" href="#normalModal" id="secondtry" class="btn btn-success btn outline">sign up</a></li> 

как вы добавили это в навигационной панели.

Я надеюсь, что это сработает. В основном, что вы делаете, это писать код диалога в самой компоновке, но за пределами панели навигации. В теле вас видят. Не в заголовке.

+0

Я не могу вас поблагодарить!) Сделал мой день, спасибо. –