loading ...
loading...

2006-09-12 | ROR学习琐记(2)

分享
标签: 数据库 

停了蛮久,继续写..

1.常用命令:

linux环境下:

创建数据库 mysqladmin -u root create depot_development

使用数据库 mysql -u root depot_develope

创建model ruby script/generate model Product

执行创建model的数据库脚本 rake db:migrate

生成脚本 ruby script/generate migration add_price

生成scaffold : ruby script/genearte scaffold model名 controller名

2.如何通过model创建表?

class CreateProducts < ActiveRecord::Migration
def self.up
  create_table :products do |t|
    t.column :title, :string
    t.column :description, :text
    t.column :image_url, :string
   end
end
def self.down
   drop_table :products
  end
end

附加:增加或者删除某字段:

add_column :products, :price, :integer, :default => 0

remove_column :products, :price

上面的例子中建立的表名为model的复数形式,如products

3.如何实行验证?

(1)validates_presence_of 判断是否为空

(2)validates_numericality_of :price, :only_integer => true 判断是否为数字且仅为整数

(3)自定义validate函数:

protected
def validate
errors.add(:price, "should be positive" ) if price.nil? || price <= 0
end

(4)判断是否重复:

validates_uniqueness_of

(5)判断格式,比如url格式:

validates_format_of :image_url,
   :with => %r{\.(gif|jpg|png)$}i,
   :message => "must be a URL for a GIF, JPG, or PNG image"

4.链接CSS文件:

<%= stylesheet_link_tag 'scaffold' , 'depot' %>

或者默认:

<%= stylesheet_link_tag 'scaffold' %>

分享 分享 |  评论 (0) |  阅读 (?)  |  固定链接 |  类别 (动态语言(ruby groovy)) |  发表于 15:47
搜狐博客温馨提示:搜狐博客官方不会要求参加活动的各位博友缴纳任何的手续费用。请勿轻信留言、评论中的中奖信息,更不要拨打陌生电话及向陌生帐户汇款,谨防受骗!识别更多网络骗术,请 点击查看详情
您还未登录,只能匿名发表评论。或者您可以 登录 后发表。
 
  *中国人爱国心,搜狗输入法爱国主题皮肤下载>>
表  情:
加载中...
回复通知: 同时用小纸条通知对方该回复