初学ROR,参照Agile Web Development with Rails写了一个depot demo,
现在静下心来整理下
rails2.0.2以后系统默认数据库为sqlite3,想要定义你自己顺手的数据库,使用以下命令
>rails depot --database=sql 即可
P:rails需要2.5以上的mysql版本
>ruby script/generate product title:string
自动生成products的controller、model、views 以及products表
通过rake db:migrate
或者rake db:migrate VERSION=0迁移数据即可(0为数据迁移版本号)
添加表中缺失字段
>ruby script/generate migration add_price_to_product price:decimal
在生成的db/migrate/20110217000002_add_price_to_price.rb文件中
可以根据个人需要对字段进行设定范围之类
如:def self.up
add_column :products, :price, :decimal, :precision=>8, :scale=>2, :default=>0
end
当然最后还记得迁移数据库rake,相应的views中也要记得加上price对应的显示
添加验证
验证代码一般放在model内,如product.rb
以下一些简单的验证
validates_presence_of 检查置顶字段是否存在、并且值不为空
validates_numericality_of 检查字段是否是合法的数值
validates_uniqueness_of 检查字段是否唯一
validates_length_of 检查长度
validates_format_of 检查格式
当然你也可以自己编写一个方法,然后以validate :function 方式调用
如:validate :price_must_be_at_least_a_cent
protected
def price_must_be_at_least_a_cent
errors.add(:price,' 不得低于0.01元') if price.nil? || price<0.01
end
//检查格式
validates_format_of :image_url,
:with=>%r{\.(gif|jpg|png)$}i,
:message=>'链接必须为GIF,JPG or PNG等格式的图片.'
scaffold自动生成一个scaffold.css文件,并且自动调用
<%= stylesheet_link_tag 'scaffold'%>
你也可以自己重新添加,只需将文件名存放在'scaffold'之后,并以“,”隔开
分享到:
相关推荐
《用Django开发Depot购物车应用》代码
depot教程depot教程depot教程depot教程depot教程depot教程depot教程depot教程depot教程
博文链接:https://zhangpeihao.iteye.com/blog/200033
《用Django开发Depot购物车应用》代码
《用Django开发Depot购物车应用》代码
《用Django开发Depot购物车应用》代码
《用Django开发Depot购物车应用》代码
《web开发敏捷之道 应用rails进行敏捷web开发》(第一版)的depot源代码,数据库需要走自己配置
depot 进销存depot 进销存depot 进销存depot 进销存depot 进销存depot 进销存
depot_tools工具,下载chrome与chromium源码用到的工具
depot_tools编译更工具,chromium编译所需工具.git clone'https://chromium.googlesource.com/chromium/tools/depot_tools.git'
自述文件 带有Rails 5.1的敏捷Web开发中的Depot应用程序。 本书,萨姆·鲁比(Sam Ruby),戴维·布莱恩特(David Bryant Copeland)和戴夫·托马斯(Dave Thomas)
depot_tools工具包 https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up
Depot
2018年4月27日翻墻下载,最新版本的depot_tools工具——Linux/Mac版本
chromium的depot_tools,windows版本,如果你被墙挡住了,可能需要它。这是我用国外的云服务器下载回来的,更新日期2016年10月28日。 需要macos版本的请搜索我的另一个资源chromium depot_tools for macos。
depot_tools.zip, depot_tools.zip
编译WebRTC用到的depot_tools工具 从国外网站上下载非常慢
HOMEDEPOT之争——宜家、东方家园、旺市百利经营案例.doc