第一次用 simple_captcha 做验证码,表示很多不会。我的表述能力不算好,直接贴代码吧 这是用到的 gem
gem "galetahub-simple_captcha", :require => "simple_captcha"
gem 'devise'
gem "mini_magick"
routes.rb
devise_for :users,
:controllers => { :sessions => "devise_hack/sessions",:registrations => "devise_hack/registrations" },
:path_names => { :sign_in => 'login', :sign_out => 'logout', :sign_up => 'sign_up'}
在 controller/devise_hack/registrations_controller 中的代码
# -*- encoding : utf-8 -*-
class DeviseHack::RegistrationsController < Devise::RegistrationsController
include SimpleCaptcha::ControllerHelpers
def create
if simple_captcha_valid?
super
else
build_resource
#clean_up_passwords(resource)
params[:user][:password] = nil
flash.now[:alert] = "验证码错误!"
respond_with_navigational(resource) { render :new }
end
end
end
在 views/devise_hack/registrations/new.html.erb 中添加了 <%= show_simple_captcha( :label => "请输入验证码")%>这么一行代码 但是并没有出现图片,显示图片的 url 没有这场获取到 这是图片的地址:http://localhost:3000/simple_captcha?code=d898b68ae4afc961defd36a90ee985b62ad19c53&time=1375957067 缺了什么配置么 我想知道这原理是什么,求赐教