Objective: To add validation for product input
1. add validation for product
class Product < ActiveRecord::Base
validates_presence_of :title, :description, :image_url
validates_numericality_of :price
validate :price_must_be_at_least_a_cent
validates_uniqueness_of :title
validates_format_of :image_url,
:with => %r{\.(gif|jpg|png)$}i,
:message => 'must be a URL for GIF, JPG ' + 'or PNG image.(gif|jpg|png)'
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
2.
That is it?! That is it!!! Just try it, you even do not need to restart server! ,my dear J2EE...
分享到:
- 2008-06-24 14:49
- 浏览 1250
- 评论(0)
- 论坛回复 / 浏览 (0 / 1555)
- 查看更多
相关推荐
标题中的“Web开发敏捷之道--应用Rails进行敏捷Web开发 之 Depot代码”表明这是一个关于使用Ruby on Rails框架进行敏捷Web开发的示例项目,名为Depot。Ruby on Rails(简称Rails)是一个开源的Web应用程序框架,它...
3. **ActiveRecord**:Rails中的ActiveRecord是ORM(对象关系映射)库,它允许开发者用Ruby类和对象直接操作数据库,简化了数据库交互。 4. **路由**:Rails的路由系统是连接URL与控制器动作的桥梁,定义了URL模式...
3. **数据库配置**:Rails默认使用SQLite数据库,但你可以通过修改`config/database.yml`文件来选择其他数据库,如MySQL或PostgreSQL。 4. **模型(Models)**:在Rails中,模型代表数据模型和业务逻辑。例如,...
depot教程depot教程depot教程depot教程depot教程depot教程depot教程depot教程depot教程
Depot_tools是Google开发的一套工具集合,主要用于简化开源项目,特别是Chrome和Chromium的源码获取、构建和管理过程。这些工具旨在提供一个统一的命令行接口,使得开发者能够更方便地参与到这些大型项目的开发中。...
"depot_tools_2017.3.24(禁止cipd更新)"这个压缩包文件包含了Chromium项目的开发工具集,depot_tools,专为Windows操作系统设计。Chromium是一个开源的浏览器项目,它是Google Chrome的基础,对于Web开发者和...
自述文件 该自述文件通常会记录启动和运行应用程序所需的所有步骤。 您可能要讲的内容: Ruby版本系统依赖配置数据库创建数据库初始化如何运行测试套件服务(作业队列,缓存服务器,搜索引擎等) 部署说明… 如果您...
"depot源代码"是一个与Rails框架相关的项目,它展示了如何使用Rails进行敏捷Web开发。Rails是Ruby编程语言的一个开源Web应用程序框架,以其MVC(模型-视图-控制器)架构模式著称,用于构建数据库驱动的Web应用。在...
3. GN:GN是Google开发的新一代构建描述语言,它比GYP更强大,能更好地处理大型项目。GN文件定义了源代码的结构,包括源文件、库、目标和依赖关系。 4. `fetch`脚本:`depot_tools`中的`fetch`脚本用于自动化获取和...
3. **运行gclient**:`gclient`是`depot_tools`中的一部分,是一个Python脚本,用于管理Git仓库和依赖关系。在CMD中运行`gclient`,可能是为了初始化或更新项目依赖。 4. **处理Python27问题**:在执行`gclient`时...
http://src.chromium.org/svn/trunk/tools/third_party/python_26,增加了python和python.bat文件,直接解压到depot_tools文件夹下。
depot_tools工具包 https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up
3. **update_depot_tools.bat**:这是一个批处理文件,通常用于更新depot_tools中的所有工具到最新版本,确保开发环境始终与最新代码保持同步。 4. **cipd.bat**:Continuous Integration Package Distribution...
5. **网络限制**:由于Depot_tools中包含了cipd(Chrome Infrastructure Package Delivery),这是一个用于分发和管理依赖项的服务,但在2019.8.3时谷歌已经禁止了其更新。这意味着用户可能无法使用cipd获取最新的...
3. 在安装界面,软件包默认处于未选中状态。用户需要回车进入一个更详细的选择界面,再次回车,软件包就会进入选中状态。 4. 接下来,使用Tab键和方向键,用户可以将光标移动到【Actions】菜单,然后选中...