我想写一个Rake任务,它将为我的应用程序加载一些开发数据,这样我就可以在浏览器中看到设计的样子,其中填充了一些数据。我曾尝试使用ActiveRecord和Faker gem进行黑客攻击,但我很难保持简单实用。它很快变得笨拙。
问题是类之间的关系相当复杂。
只是想知道它是什么样的,这里是布局部分的简化版本......
assets
------
make
model
serial_number
asset_type_id
asset_types
-----------
general_type
specific_type
attribute_names
---------------
asset_id
name
attribute_values
----------------
value
asset_id
attribute_name_id
还有users
和roles
以及其他一些人。
有什么建议吗?我应该知道有用的宝石吗?
要添加的一件事......如果数据有意义,那就太好了。例如。如果资产类型是“计算机”,则制造商是“戴尔”等,但这并非绝对必要。
答案 0 :(得分:5)
通过railscasts.com观看此截屏视频: http://railscasts.com/episodes/126-populating-a-database
答案 1 :(得分:2)
查看Populator GEM。 您可以提供一组值,它将随机选择一个。
答案 2 :(得分:2)
答案 3 :(得分:0)
您是否必须从头开始生成测试数据?如果数据结构复杂,那将很困难。
你不能只是采取一些数据库转储,根据需要对其进行匿名化并将其作为测试数据加载吗?这就是我们正常做的事情。
答案 4 :(得分:0)