博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ruby on Rails(ROR) 小结(一) 通过Schema Migrations来创建数据表
阅读量:4051 次
发布时间:2019-05-25

本文共 930 字,大约阅读时间需要 3 分钟。

 

1) 创建项目

E.g.

rails photos

cd photos

 

2) 创建数据库

mysql>create database photos_develop

 

3) 配置数据库

相关的配置文件已经在前面讲过, 这里就不再赘述。

 

4) 创建数据模型对象

>ruby script/generate model Photo

 

result:

    在 app/models 产生photo.rb 数据库模型对象

    在 db/migrate 创建20100120134503_create_photos.rb

修改20100120134503_create_photos.rb如下:

class CreatePhotos < ActiveRecord::Migration

  def self.up
    create_table "photos" do |t|
      t.column "filename", :string
     
      #photo.timestamps
    end
  end
  def self.down
    drop_table "photos"
  end
end

 

Schema migrations 的功能是记录一个migration列表, 每个migration 有相关的版本编号。 up 方法创建具有两个字段(filename , id )的photo数据表,还有一个down 方法可以将之移除。每个schema migration 都执行(do)及撤销(undo)改变的一些步骤,

同时还可以包含对数据所做的改变。

 

5) 运行migration

>rake db:migrate

 

Active Record 创建了两张数据表: schema_info 和 photos。

 

6)通过Rails控制台测试

ruby script/console

 

>>photo =Photo.new

=>...

>>photo.filename = "test"

=>...

>>photo.save

=>...

 

或者在Active Record类上的new方法编写代码块,在控制台编写也可以

photo.new do |you|

you.filename = "name"

you.save

end

 

转载地址:http://rhcci.baihongyu.com/

你可能感兴趣的文章
activemq依赖包获取
查看>>
概念区别
查看>>
final 的作用
查看>>
在Idea中使用Eclipse编译器
查看>>
Idea下安装Lombok插件
查看>>
zookeeper
查看>>
Idea导入的工程看不到src等代码
查看>>
技术栈
查看>>
Jenkins中shell-script执行报错sh: line 2: npm: command not found
查看>>
8.X版本的node打包时,gulp命令报错 require.extensions.hasownproperty
查看>>
Jenkins 启动命令
查看>>
Maven项目版本继承 – 我必须指定父版本?
查看>>
通过C++反射实现C++与任意脚本(lua、js等)的交互(二)
查看>>
利用清华镜像站解决pip超时问题
查看>>
微信小程序开发全线记录
查看>>
CCF 分蛋糕
查看>>
解决python2.7中UnicodeEncodeError
查看>>
小谈python 输出
查看>>
Django objects.all()、objects.get()与objects.filter()之间的区别介绍
查看>>
python:如何将excel文件转化成CSV格式
查看>>