https://github.com/huacnlee/rucaptcha
用法很简单,按照说明就可以了.
以下是简单的与devise相关的处理
- 配置好
rucaptcha - 修改
routes中的devise_for users变为:
devise_for :users, controllers: { registrations: 'users/registrations' }
这样,注册功能的controller就变成了
controllers/users/registrations_controller.rb - 修改
controllers/users/registrations_controller.rb
before_action: :verify_rucaptcha!
...
private
def verify_rucaptcha!
if !verify_rucaptcha?
redirect_to new_user_session_path, alert: 'rucaptcha invalid'
false
else
true
end
end
- 修改
views/devise/registrations/new.html.erb
...
<div class="form-group">
<%= rucaptcha_input_tag(class: 'form-control', placeholder: 'Input Captcha') %>
<%= rucaptcha_image_tag(alt: 'Captcha') %>
</div>
...
这样就OK了。登录功能增加图形验证码也是类似的处理方式。









网友评论