1
运行迁移任务
Rake db:migrate
数据库中
schema_info
表记录
version
的当前版本信息如:
20081230025725
2
字段类型
通过迁移任务可以把任务中的程序数据类型转换成数据库相对应的类型
类型包括:
binary
、
boolean
、
date
、
datetime
、
decimal
、
float
、
integer
、
string
、
text
、
time
、
timeestamp
增加字段:
add_column:orders(
表名
)
,
,
:e_mail(
字段名
)
,
:string(
字段类型
)
,
:null=>false,
,
:limit=>100,
,
:default=>’priority’
Null
字段:值为
false
为
not null
Limit
字段:设置字段大小限制
Default
字段:设置字段的默认值
3
字段改名
rename_column :orders(
表名
)
,
,
:e_mail(
被改字段名
)
,
:customer_email(
修改名字字段
)
4
修改字段
Change_column :orders(
表名
)
,
:order_type(
字段名
)
,
:string(
最终类型
)
,
:null=>
5
表的管理
1
表的创建
create_table :order_histories
do |t|
t.integer :order_id, :null => false
t.text :notes
t.timestamps
注:两个颜色部分的内容必不可少
2
表的重命名
rename_table
:order_histories(
被修改的表名
)
,
:order_notes(
要修改的表名
)
为保证迁移任务能够运行,保证如果在建表时还没有表对应的类,应
在迁移任务中首先定义一个类来站位,以保证迁移任务不会出错。
6
定义索引
Add_index :orders(
表名
)
, :name(
索引所放位置
)
移除:
remove_index ……..
若加入参数
:unique=>true
表示被索引字段值必须唯一
注:移除索引时也必须加入字段名
7
主键
改变主键名称:在建立表的时候改变
create_table
:tickets, :primary_key=>number do |t|
其他属性不变,不需加入新改变的主键属性
End
没有主键的表:
create_table
:authors_books :id=>false do |t|
……
8
在迁移任务中加载数据
模型
.create(:
属性
=>
值,属性
=>
值
)
注:
create
相当于模型
.new().save
9
从夹具中转载数据(略)
首先创建夹具文件:在
migration
下建立文件夹,在文件夹中建立数据文件
.yml
Yml
数据的格式为:
……
分享到:
相关推荐
在IT行业中,数据库的迁移是一项常见的任务,尤其是在不断发展的技术环境中。本篇文章将详细探讨一个特定的工具集,即使用Ruby语言实现的“SSDB到Redis/Pika”的迁移工具,标题为“Ruby-迁移SSDB到RedisPika工具集...
下面将详细介绍Rake的基础知识,包括任务的创建、命名空间和默认任务的设定。 首先,Rake允许开发者定义任务,这些任务可以是有独立功能的代码块。在Rakefile中,你可以创建一个简单的任务,如: ```ruby task :...
### Ruby on Rails基础知识详解 #### 一、Rails简介与安装 **Rails** 是一款流行的开源Web应用框架,基于Ruby语言编写。它强调简洁性、生产力和优雅的设计,非常适合快速开发Web应用。 - **特点** - **DRY (Don'...
- Rake:Ruby的Make工具,用于执行脚本任务,如数据库迁移、测试等。 - Rails Console:交互式命令行工具,方便开发者在运行时检查和修改应用程序状态。 4. **Rails开发流程**: - 新建项目:使用`rails new`...
通过这些资源,初学者可以在短时间内建立起对Ruby语言和Rails框架的基本理解,并逐步进阶到更复杂的开发任务。记得理论学习与实践相结合,不断编写代码和调试,是提升技能的最好方式。祝你在Ruby的世界里探索愉快!
另外,Ruby的标准库非常丰富,提供了大量的工具和模块,可以帮助开发者处理各种任务。例如,Net::HTTP模块用于网络请求,CSV处理逗号分隔值文件,JSON模块解析和生成JSON数据,等等。 在实践过程中,掌握版本控制...
2. **Ruby代码小计**:这里可能涵盖了Ruby编程的基础和进阶技巧,如变量、数据类型、控制流、方法定义以及面向对象特性,如继承、封装和多态等。 3. **Rails页面技巧**:这部分可能涉及了如何在Rails中创建、布局、...
5. **内置命令行工具**:Padrino提供了一套强大的命令行工具,用于快速初始化项目、生成模型、控制器和迁移,以及执行其他常见的开发任务。 6. **测试框架集成**:Padrino与RSpec、Test::Unit等测试框架紧密集成,...
7. **Rake任务**:Rails自带的命令行工具,用于执行各种任务,如数据库迁移、测试等。 8. **Testing**:Rails鼓励TDD(测试驱动开发),提供了RSpec、MiniTest等测试框架,便于编写单元测试和集成测试。 9. **...
10. `Rakefile`:定义自动化任务,比如数据库迁移。 11. `README.md`:项目简介和指南。 通过这个项目,新手可以了解Rails的目录结构,学习如何创建控制器、视图和模型,以及如何使用Rails的路由系统。此外,还会...
Rails是一个基于Ruby语言的全栈式Web开发框架,它遵循“约定优于配置”的设计理念,简化了许多常见的开发任务,如数据库交互、用户认证、路由管理等。Rails框架采用MVC(模型-视图-控制器)架构模式,将业务逻辑、...
这极大地简化了数据库管理任务,无需关心底层基础设施的运维。 Google Cloud BigQuery服务也得到了很好的支持。这是一个用于大数据分析的服务,能够处理PB级别的数据。Ruby开发者可以使用此开发包编写查询,获取...
8. `Rakefile`:包含Rake任务,用于自动化任务执行。 9. `README.md`:项目说明文件。 **即时通讯技术** 在RailsChat中,即时通讯可能通过以下技术实现: - **ActionCable**:Rails的默认实时通信解决方案,结合...
Ruby:基础语言** Ruby是一种面向对象的、动态类型的编程语言,以其简洁、优雅的语法和强大的元编程能力而闻名。Capistrano充分利用了Ruby的这些特性,使得编写部署脚本变得直观且易于维护。 **2. Rake:任务管理...
**Ruby入门培训** ...通过深入学习以上知识点,初学者将能够掌握Ruby的基础,并逐步进阶到更高级的开发技能。在实际项目中,结合使用Ruby的工具和库,能够提升开发效率,创建出高效且易于维护的软件系统。
- **常用 Rake 任务**:如 `rake db:migrate` 用于数据库迁移。 **7.3 版本管理** - **RVM**:Ruby 版本管理器。 - **rbenv**:轻量级的 Ruby 版本管理工具。 #### 八、社区和资源 **8.1 文档** - **Ruby 官方...
- `rake`:Rails的内置任务执行器,通常用于运行数据库迁移、测试等。 4. **数据库与迁移**:Rails使用ActiveRecord处理数据库操作,通过迁移文件(`.rb`文件)来管理数据库结构的变化。`db:migrate`命令用于执行...
Rake工具则提供了任务自动化,可以执行数据库迁移、构建或者清理任务。 Ruby on Rails的社区非常活跃,拥有丰富的插件和gem(Ruby的库包),如Devise用于身份验证,CanCanCan进行权限管理,Carrierwave或Paperclip...
Ruby语言是本书的基础,它是一门动态、面向对象的脚本语言,以其简洁、优雅的语法著称。Ruby强调代码的可读性和表达性,使得开发者能够快速地编写出易于理解的代码。在Rails中,Ruby被用来定义模型、控制器和视图,...
Ruby on Rails 目录结构 + app/ #控制器、模型、视图、帮助方法、邮件、静态资源 + bin/ #rails脚本 + config/ #路由、数据库等 + db/ #数据库模式、迁移文件 + lib/ #扩展模块 + log/ #日志 + public/ #公共资源 ...