Как сократить время отправки формы в рельсах 5 - PullRequest
0 голосов
/ 27 мая 2020

Описание

В нашем проекте rails 5 я использую проверку формы jQuery для проверки поля формы, и она работает нормально, но загрузка и отправка формы после щелчка занимает много времени (10se c) на кнопке отправки. Без проверки jQuery потребуется 4-5se c для отправки формы. Я использую turbolinks: load, чтобы ускорить процесс отправки формы, но я не получил ожидаемого результата!

Можно ли минимизировать время отправки и загрузки формы ?? Пожалуйста, помогите ..

Форма

<div class="wrapper">
  <div class="container">
    <div class="content pt-5 mb-5">
      <div class="title"><h2>Sign in</h2></div>
        <div class="row">
          <div class="col-lg-4 offset-lg-4 col-md-6 offset-md-3">
            <%= form_tag web_sessions_path, :id => 'sign-in' do %>
              <div class="form-group">
                <%= text_field_tag 'email',nil,class: "form-control", placeholder: "Email"%>
              </div>
              <div class="form-group">
                <%= password_field_tag 'password', nil, class: "form-control" , placeholder: "Password"%>
              </div>
              <div class="form-group text-right">
                <a href="<%= recover_password_web_sessions_path %>" class="link text-capitalize bold font14">forgot password?</a>
              </div>
              <div class="form-group">
                <%= submit_tag "Submit", class: " mt-4 btn btn-primary w-100" %>
              </div>
            <% end %>
            <div class="or">
              <span >or</span>
            </div>
             <div class="form-group">
              <a href="<%=new_web_registration_path %>" class=" mt-4 btn btn-outline w-100"> Create a new account</a>
            </div>
          </div>
        </div>
    </div>
  </div>
</div>

JS

<script type="text/javascript">
  $(document).on('ready turbolinks:load', function() {
    $("#sign-in").validate({
      rules: {
        email: {
            required: true,
            email: true
        },
        password: {
            required: true,
            minlength: 6
        }
      },
      messages: {
        email: {
            required: "This field is required.",
            email: "Please enter valid email"
        },
        password: {
            required: "This field is required.",
            minlength: "Password should be at least {0} characters long"
        }
      },
      submitHandler: function (form) {
        $(form).submit();
      }
    });
  });
</script>
...