`

Rails中验证

    博客分类:
  • Ruby
 
阅读更多
1. validates_presence_of
   validates_presence_of()方法是一个标准的Rails验证器,它会检查指定字段存在、并且值不为空。
   用法,例如:(C:\Users\Tony\Desktop\rails\deopt\app\models\product.rb)
  
class Product < ActiveRecord::Base
  validates_presence_of :title, :description, :image_url
end
   


2. validates_numericality_of
   来检查价格是否是合法的数值。

3. validate(只定义验证)
   例如:
  
class Product < ActiveRecord::Base
  validates_presence_of :title, :description, :image_url

  validates_numericality_of :price
  validate :price_must_be_at_least_a_cent

  protected
  def price_must_be_at_least_a_cent
    errors.add(:price, 'should be at least 0.01' ) if price.nil? || price < 0.01
  end
end
   


4. validates_uniqueness_of
   确保数据的唯一性:
  
  validates_uniqueness_of :title


5. validates_format_of
   validates_format_of()验证格式是否正确:
  
  validates_format_of :image_url,
                   :with => %r{\.(gif|jpg|png)$}i,
                   :message => 'must be a URL for GIF, JPG or PNG image.'
   

  
分享到:
评论

相关推荐

    关于Rails登录和验证插件http_authentication restful-authentication

    在Rails应用中实现用户登录和验证是构建任何Web服务的基础。本文将深入探讨Rails中的http_authentication和restful-authentication插件,这两种方法都常用于用户身份验证。 首先,让我们了解HTTP基本认证...

    Ruby on Rails中文指南

    5. **活性验证(ActiveRecord Validations)**:模型中的活性验证确保在保存数据到数据库之前,数据的有效性和完整性。 6. **辅助方法(Helper Methods)**:辅助方法是为了保持视图整洁而创建的函数,它们可以提供...

    rails中使用javascript日期控件

    在Rails开发中,为了增强用户体验,常常需要使用JavaScript来处理日期选择和管理。这篇博客“rails中使用javascript日期控件”探讨的就是如何在Rails应用中集成JavaScript日期控件,特别是通过一个名为WebCalendar....

    在rails中 使用RSpec生产CHM文档

    在本案例中,它可能被用来验证生成CHM文档的过程是否正确。 首先,我们需要理解Rails项目结构,以及如何在其中引入RSpec。在新的或现有的Rails项目中,可以使用`rspec-rails` gem来集成RSpec。通过在Gemfile中添加`...

    在Rails中使用SSL

    在Rails中使用SSL(安全套接层)是构建Web应用时确保数据传输安全的重要步骤。Rails框架支持在应用程序中轻松集成SSL,以保护用户敏感信息,如登录凭据和支付详情。以下是一些关于在Rails中实施SSL的关键知识点: 1...

    Rails 101 入门电子书

    - 测试安装: 创建一个简单的Rails应用来验证是否成功安装。 #### 五、练习作业0-Hello World - **目标**: - 学习如何创建第一个Rails应用程序。 - **过程**: - 创建新项目。 - 设置数据库配置。 - 创建控制器...

    Ruby-Knock为RailsAPI实现无缝JWT身份验证

    在描述中提到的"Knock"是一个专门为Rails API设计的库,它帮助开发者实现JSON Web Token(JWT)的身份验证,这是一种安全的身份验证机制,适用于无状态API。 JWT是一种轻量级的认证协议,它允许服务器向客户端发送...

    Rails项目源代码

    在Rails中,可以使用Devise这样的gem来处理用户身份验证,提供注册、登录、密码重置等功能。用户模型通常会包含确认令牌、加密密码等相关字段。 4. **数据库和ActiveRecord**: Rails使用ActiveRecord作为ORM,它...

    关于rails学习中分页的示例

    防止恶意用户通过修改URL中的分页参数来访问未授权的数据,确保在控制器中对`params[:page]`进行验证。 以上就是Rails中使用`Kaminari`实现分页的基本流程和注意事项。理解并熟练掌握分页技巧,能够帮助你在开发...

    mail_form, 在 Rails 中使用 i18n 验证附件和请求信息,直接从表单发送电子邮件.zip

    mail_form, 在 Rails 中使用 i18n 验证附件和请求信息,直接从表单发送电子邮件 MailForm Rails 3这个 gem 构建在 ActiveModel 之上,展示如何从 Rails 中提取验证。命名和 i18n,而不需要自己实现。本自述文件指的...

    rails2-sample

    同时,表单是Web应用中不可或缺的部分,Rails提供了丰富的API来处理表单的创建和验证。此外,布局(Layouts)允许开发者在多个页面中重用公共的HTML代码,如头部和尾部,从而提高开发效率。 #### 7. Ajax and Web ...

    rails敏捷开发的购物车系统

    在本文中,我们将深入探讨如何使用Rails敏捷开发技术构建一个购物车系统,特别是在参考《rails敏捷开发第四版》中的示例。Rails 3.2.6是本文的基础框架,它是一个强大的Ruby Web应用程序框架,以其MVC(模型-视图-...

    react-devise, Ruby on Rails 设计验证服务器的ReactJS前端.zip

    react-devise, Ruby on Rails 设计验证服务器的ReactJS前端 ATTENTON: 目前,这必须是实验性软件,而不是在生产中使用。设计简介设计长期以来一直是 Rails 应用的认证库。 只需将设计放入你的Rails 应用程序,进行...

    Ruby on Rails Guides v2 - Ruby on Rails 4.2.5

    - **类型**:Rails提供了多种内置的验证类型,如`presence`、`uniqueness`、`format`等。 #### 三、关联 - **定义**:关联是指定义模型之间的关系,如一对一、一对多等。 - **示例**:例如,在博客系统中,一篇...

    railsAPI

    在Rails API中,模型(Model)代表应用程序的数据结构,它与数据库交互,处理数据验证和业务逻辑。视图(View)是用户看到和与之交互的部分,而控制器(Controller)作为模型和视图之间的协调者,处理用户请求并决定...

    rails本地安装包完整版

    Rails 2.1.0引入了许多新特性,例如活动记录(ActiveRecord)的自动保存关联、部分渲染以及自定义验证选项等。 7. **activerecord-2.1.0.gem**:ActiveRecord是Rails中的ORM(对象关系映射)库,负责将数据库表映射...

    rails 项目起步示例

    在Rails项目中,我们首先需要了解的是项目的目录结构。一个标准的Rails应用会包含以下关键部分: 1. **app**:应用程序的核心,包括模型(models)、视图(views)和控制器(controllers)。模型负责业务逻辑和数据...

    rails api(文档)

    在Rails API中,主要的亮点包括: 1. **轻量级结构**:Rails API剥离了Web展示层的组件,如Action View和Asset Pipeline,从而减少了不必要的依赖和加载时间,提高了API服务的响应速度。 2. **更好的性能**:由于...

    Ruby on Rails入门例子

    1. **Model**:模型是应用程序中的数据层,它与数据库交互,负责业务逻辑和数据验证。在Rails中,我们通常使用ActiveRecord库来创建模型,通过继承`ApplicationRecord`类并定义属性和关系。 2. **View**:视图负责...

Global site tag (gtag.js) - Google Analytics