Я пытаюсь добавить подтверждение по электронной почте при регистрации пользователей. Пользователи должны заполнить форму своим кодом приглашения и адресом электронной почты, а затем получить электронное письмо с ссылкой активации.format.js не выполняется (ajax)
Итак, все, что я хочу сделать, так это, когда пользователь заполняет форму, он отправляет форму и перезагружает форму, чтобы она скрывалась и отображает сообщение «мы отправили вам электронное письмо, пожалуйста, проверьте и нажмите link "вместо перезагрузки всей страницы.
signup.html.erb
здесь я добавил удаленный: правда
<%= form_tag(form_action, method: :get, remote: true, id: 'create-form') do %>
users_controller.rb
о перенаправлении работ, но format.js является неизвестный формат
def new
... code checking params
if @user.user_email_confirmed
render :new
else
respond_to do |format|
format.html { redirect_to signup_path(@user.name, email: @user.email) }
format.js
end
end
new.js.erb
$('#create-form').hide().after('');
$('.login-form').append('<p class="link-sent">We have sent an activation link to the email address you entered - please be sure to check your spam or trash folders. Please click that link to complete account activation.</p>');
не уверен, что мне не хватает, какие-либо идеи?
Когда вы нажмете кнопку «отправить» в своей форме, вы уверены, что ваше «новое» действие вызвано, я действительно так не считаю !! – SsouLlesS
Пожалуйста, проверьте, есть ли у вас какое-то 'before_action' или какой-либо другой обратный вызов в контроллере, который может вызывать проблемы – SsouLlesS
Я уверен, что кнопка отправки вызывает новое. Действие формы указывает на новый маршрут пользователей #. – cvDv