安装:
ruby script/plugin install git://github.com/kares/simple_captcha.git
安装之后,跟随下面的步骤配置插件:
#### STEP 1
rails generate simple_captcha
#### STEP 2
rake db:migrate
#### STEP 3
将下面的代码添加到 config/routes.rb :
Keditor::Application.routes.draw do match '/simple_captcha/:action', :controller => 'simple_captcha', :as => :simple_captcha end
#### STEP 4
配置simple_captcha e.g. in `app/config/initializers/simple_captcha.rb`
前提条件是系统安装了rmagick和相关的gem 安装rmagick
SimpleCaptcha.backend = :RMagick SimpleCaptcha.image_options = { :image_color => 'white', :image_size => '110x30', :text_color => 'black', :text_font => 'arial', :text_size => 22 } # these are the defaults
添加代码到app/controllers/application.rb
ApplicationController < ActionController::Base include SimpleCaptcha::ControllerValidation end
添加代码到model,以user为例子,注册时要求验证码
class User < ActiveRecord::Base include SimpleCaptcha::ModelValidation validates_captcha :on => :create, :message => 'invalid captcha' end
singup.html.erb注册页面加入show_simple_captcha:
<%=form_for @user,:as=>:user, :url=>users_path, :method=>"put",:html=>{:name=>"regform",:id=>"regform"} do%> <li style="display:block;" class="captchadiv"> <div class="reg_formlabel">验 证 码:</div> <div class="reg_element "> <span class="inp_box"> <div class="field" id="div_simple_captcha"> <%= show_simple_captcha :object=>"user",:label=>"请输入图片中的文字",:distortion=>:high%></div> </span> <%if @user.errors.on(:captcha)%> <div style="display:block" class="reg_tips form-valid-tip-err"> <div style="display:block;" class="error l"> <span class="form-valid-err-content"><%=@user.errors.on(:captcha)%></span> </div> </div> <%end%> </div> </li> <%end%>
默认插件不支持切换验证码,需手动添加
config/routes.rb :
resources :users do collection do get 'update_captcha' end end
users controller:
def update_captcha respond_to do |format| format.js end end
users view:update_captcha.rjs
page.replace_html "div_simple_captcha",show_simple_captcha(:object=>"user",:label=>"请输入图片中的文字",:distortion=>:high)
修改插件view的代码,加入一个链接:#{Rails.root.to_s}/vendor/plugins/simple_captcha/app/views/simple_captcha/_simple_captcha,前提要载入jquery
<div id='simple_captcha'> <div class='simple_captcha_image'> <%= @simple_captcha_options[:image] %> </div> <div class='simple_captcha_field'> <%= @simple_captcha_options[:field] %> </div> <div class='simple_captcha_label'> <%= @simple_captcha_options[:label] %> <a onclick="jQuery.ajax({data:'', dataType:'script', type:'post', url:'/users/update_captcha'}); return false;" href="#">换一张</a> </div> </div>
相关推荐
基于rmagick的rails 3的简单验证码实现 经过Rails 3.2.8的测试 安装 添加到Gemfile gem 'easy_captcha' gem 'rmagick' 对于Java,您可以使用 gem 'rmagick4j' 捆绑执行后 rails g easy_captcha: install 配置 ...
### Rails 3升级手册知识点详解 #### 一、Rails 3升级手册概览 本手册是一份详尽的指南,旨在帮助开发者顺利完成从旧版本Rails到Rails 3的升级过程。手册共包含近120页的内容,覆盖了升级过程中所需的所有关键信息...
### Rails3教程知识点详解 #### 一、Rails3简介与核心原则 **Rails3**是Ruby on Rails框架的一个重要版本,它对之前的版本进行了大量的改进和优化,使其更加强大和灵活。Rails3的核心设计理念围绕着几个关键的概念...
Rails3 是 Ruby on Rails 框架的一个版本,它提供了一系列强大的命令行工具,使得开发者可以快速地构建和管理Web应用。在本文中,我们将深入探讨Rails3中的常用命令,帮助你更高效地进行开发工作。 首先,新建一个...
《Ruby on Rails 3 Tutorial》是一本专门为初学者设计的指南,旨在帮助读者快速掌握Ruby on Rails这一强大的Web开发框架。Ruby on Rails(简称Rails)是基于Ruby语言的一个开源框架,它采用MVC(Model-View-...
SimpleCaptcha2可以与Rails 3 + 4一起使用。这是流行的Rubygem simple_captcha一个分支,被遗弃了。 ##特征 零FileSystem使用率(将秘密代码移至db-store并删除了图像存储)。 提供各种图像样式。 提供三个...
《Rails 3 in Action》是2011年由Ryan Bigg撰写的一本关于Ruby on Rails框架的权威指南,专门针对当时最新的Rails 3.1版本进行了深入解析。这本书旨在帮助开发者充分利用Rails 3.1的强大功能,提升Web应用开发的效率...
### CentOS环境下Rails 3开发环境搭建详解 #### 一、准备工作与环境配置 在开始部署Rails 3开发环境之前,我们需要确保系统上已经安装了一些基本的软件包和工具。这一步骤对于后续的Ruby和Rails安装至关重要。 ##...
在Ruby on Rails框架中,构建表单是一项常见的任务,而Simple Form gem就是为了简化这一过程而设计的。Simple Form是一款强大的表单构建器,它提供了一种简洁、直观的方式来创建复杂的表单,使得开发者能更专注于...
turbo-sprockets-rails3, 加速你的Rails 3资产 用于 Rails 3.2.x的涡轮链轮 通过只根据源文件的哈希来重新编译已经更改的资产,从而加快 Rails 3 rake assets:precompile的速度只编译一次以生成指纹和非打印的资产...
Ruby on Rails 3 是一个基于Ruby编程语言的开源Web应用程序框架,它遵循MVC(Model-...提供的文档如"Ruby192和Rails3.0.3的新征程.doc"和"rails3入门教程.pdf"等,将有助于深入理解这一框架及其在实际项目中的应用。
SimpleCaptcha2 可以与 Rails 3 + 4 一起使用。这是流行的 Rubygem simple_captcha一个分支,它被废弃了。 ##特征 零文件系统使用(秘密代码移至 db-store 并删除图像存储)。 提供各种图像样式。 提供三个...
基于java的开发源码-Rails3消息队列系统 Sidekiq.zip 基于java的开发源码-Rails3消息队列系统 Sidekiq.zip 基于java的开发源码-Rails3消息队列系统 Sidekiq.zip 基于java的开发源码-Rails3消息队列系统 Sidekiq.zip ...
The Rails™ 3 Way is the only comprehensive, authoritative guide to delivering production-quality code with Rails 3. Pioneering Rails expert Obie Fernandez and a team of leading experts illuminate ...
在“Ruby Rails 3 Linda”这一主题中,我们将会深入探讨Rails 3版本的相关知识点。 1. **安装与设置**:首先,学习如何在本地环境中安装Ruby、RubyGems和Rails。Ruby版本管理器如RVM(Ruby Version Manager)或...
### Ruby on Rails 3 教程知识点解析 #### 标题与描述中的核心知识点 - **Ruby on Rails 3**:一种流行的Web开发框架,基于Ruby语言。 - **经典教材**:表明本书是学习Ruby on Rails 3的一个权威且广受好评的资源...
Rails3 是 Ruby on Rails 框架的一个版本,它在2010年发布,引入了许多新特性并改进了框架的性能。Rake 是 Ruby 的一个构建工具,类似于 Java 的 Ant 或者 Python 的 setup.py,它允许开发者用自然语言定义任务,并...
Rails3消息队列系统 Sidekiq
### 关于《Rails 3 的方式》第二版的知识点总结 #### 一、书籍概述与评价 《Rails 3 的方式》(The Rails 3 Way, 2nd Edition)是一本深入探讨Ruby on Rails框架(简称Rails)的技术书籍。本书不仅涵盖了Rails 3的...
### 关于《Beginning Rails 3》的关键知识点 #### 一、书籍概述 《Beginning Rails 3》是由Cloves Carneiro Jr. 和 Rida Al Barazi共同编写的关于使用Ruby on Rails框架进行Web开发的入门级教程。该书旨在帮助初学...