学习札记――seed方法构建初始数据库
2013-04-17 22:00
253 查看
首先在ruby on rails 工程中db目录下的seeds.rb文件中写入如下代码
require 'active_record/fixtures'
require 'yaml'
require 'erb'
require 'zlib'
YAML::ENGINE.yamler= 'syck'
Dir.foreach("#{Rails.root}/db/fixtures/").each do |file|
if file!= "." and file != ".."
ActiveRecord::Fixtures.create_fixtures("#{Rails.root}/db/fixtures", file[/[\w]*/])
end
end
上面代码主要思想是
1.打开 #{Rails.root}/db/fixtures/ 目录下所有文件遍历出来
2.得到所有文件名(不要后缀名的)
3.利用 :Fixtures 夹具把yml文件中的用例全部构建出来
这里重点是yml文件写法如下
one:
id: 980190963
secondary_unit_id: 12
username: jack
hashed_password: 8e0b7fb33c77476781164cc2a33cbb9fbefd54adb8c0065500ae62f0a4143240
salt: 472201560.9245954428962321
phone: 13588889999
email: 123@163.com
card_id: 12
real_name: 王某某
注意
one:前面是没有空格的
id:这些属性前面都有空格
id:980190963 属性与具体值之间也有空格
如果不注意这些细节就会发生formatError的错误。
参考资料
http://railscasts.com/episodes/179-seed-data?language=zh&view=asciicast
本文出自 “不怕错就怕不闯” 博客,请务必保留此出处http://jacksongblack.blog.51cto.com/6378693/1180245
require 'active_record/fixtures'
require 'yaml'
require 'erb'
require 'zlib'
YAML::ENGINE.yamler= 'syck'
Dir.foreach("#{Rails.root}/db/fixtures/").each do |file|
if file!= "." and file != ".."
ActiveRecord::Fixtures.create_fixtures("#{Rails.root}/db/fixtures", file[/[\w]*/])
end
end
上面代码主要思想是
1.打开 #{Rails.root}/db/fixtures/ 目录下所有文件遍历出来
2.得到所有文件名(不要后缀名的)
3.利用 :Fixtures 夹具把yml文件中的用例全部构建出来
这里重点是yml文件写法如下
one:
id: 980190963
secondary_unit_id: 12
username: jack
hashed_password: 8e0b7fb33c77476781164cc2a33cbb9fbefd54adb8c0065500ae62f0a4143240
salt: 472201560.9245954428962321
phone: 13588889999
email: 123@163.com
card_id: 12
real_name: 王某某
注意
one:前面是没有空格的
id:这些属性前面都有空格
id:980190963 属性与具体值之间也有空格
如果不注意这些细节就会发生formatError的错误。
参考资料
http://railscasts.com/episodes/179-seed-data?language=zh&view=asciicast
本文出自 “不怕错就怕不闯” 博客,请务必保留此出处http://jacksongblack.blog.51cto.com/6378693/1180245
相关文章推荐
- 学习札记――seed方法构建初始数据库(脚本改进版)
- ASP.NET使用EF时的seed方法以及初始数据的构造
- Expression构建DataTable to Entity 映射委托 sqlserver 数据库里面金额类型为什么不建议用float,实例告诉你为什么不能。 sql server 多行数据合并成一列 C# 字符串大写转小写,小写转大写,数字保留,其他除外 从0开始用U盘制作启动盘装Windows10系统(联想R720笔记本)并永久激活方法 纯CSS打造淘宝导航菜单栏 C# Winform
- Zend框架设置数据库连接编码为utf8三种方法
- 数据库导入导出逻辑备份方法总结
- java实现二叉树的构建以及3种遍历方法
- C#创建数据库及导入sql脚本的方法
- Symfony2使用Doctrine进行数据库查询方法实例总结
- SQLSEVER2000的数据库备份/恢复(VB方法)
- 附加没有日志文件的数据库方法
- MesaSQLite数据库的简单使用方法
- 在Tomcat 6.0中配置数据库JNDI的方法
- phpmyadmin数据库导入导出方法
- rs返回值的问题:JDBC ResultSet#getInt方法, 若数据库中记录的数值为null,getInt返回的是数值“0”,而不是null!
- 数据库的插入和更新时,不用一一地列出字段的懒方法
- Android 数据库文件存取至储存卡的方法
- .NET 获取数据库中所有表名的方法
- SharePoint 2010 Reporting Services 报表服务器无法解密用于访问报表服务器数据库中的敏感数据或加密数据的对称密钥 解决方法
- mysqldump命令导入导出数据库方法与实例汇总
- JS中获取数据库中的值的方法