Отправка формы без проверки рекапчи - PullRequest
0 голосов
/ 03 апреля 2019

У меня настроена рекапча в форме на локальном хосте, но я могу отправить эту форму, не устанавливая флажок «Я не робот». Я пытаюсь использовать драгоценный камень ambethia / recaptcha, но не могу заставить его работать.

Я следовал руководству и просмотрел несколько видео и других сайтов в Интернете, но не могу понять, что я делаю неправильно.

Это моя форма, она является частью файла show.html.erb:

<% if @entry %>
  <% if @entry_result %>
    <p class="alert alert-success"><%= @entry.form.success_message %></p>
  <% else %>
    <%= simple_form_for(@entry) do |f| %>
      <%= f.error_notification %>
      <%= f.association :form, as: :hidden %>
      <%= render "form#{@entry.form.id}", entry: @entry, f: f %>
      <script src="https://www.google.com/recaptcha/api.js" async defer></script>
      <div class="g-recaptcha" data-sitekey="6Lch3ZkUAAAAAB3-KdNTF6_pLdeByzzdvvUveCcL"></div>
      <%= f.button :submit, value: 'Submit', class: 'btn btn-primary', data: { disable_with: 'Please wait...' } %>
    <% end %>
  <% end %>
<% end %>

и это часть файла pages_controller.rb, которой я пытаюсь манипулировать:

 def show
    @post = Post.friendly.where(slug: params[:id]).first

    unless @post
      return redirect_to root_path
    end

    # Form at bottom of page
    @entry = false
    @entry_result = false
    if @post.form
      if session[:form_entry]
        @entry_result = session[:form_entry]
        verify_recaptcha(model: @entry) && session[:form_entry] = false
      end
      @entry = FormEntry.new(form: @post.form)
    end

Я унаследовал это приложение от разработчика, которого больше нет в моей компании, но, насколько я могу судить, я смотрю на нужные файлы / разделы. Я пробовал много разных заменителей раздела "model: @entry", но, похоже, ничего не работает. Все, что я пробовал, позволяет отправлять форму без установленного флажка. Буду признателен за любую помощь или понимание, спасибо за ваше время.

...