3
我有一个pg_restore
数据转储的原始输出,需要围绕数据集构建一个应用程序来分析里面的内容。使用pg_restore数据转储创建新的Rails应用程序
到目前为止,我创建了一个新的Rails应用程序,设置我database.yml
文件交谈正确的Postgres数据库,跑pg_restore
。在Postgres中数据库看起来没问题
我的问题是,我如何开始使用Rails和ActiveRecord连接到这些表,以便我可以开始理解里面的内容?我倾向于使用AR和Rails进行分析,而不仅仅是在pg控制台中进行分析。
1)我是否需要为使用pg_restore
导入的每个表创建一个模型?
样本输出:(注意:如果我搜索到Rails控制台中的所有表名的表存在,但我无法真正连接到它)
Loading development environment (Rails 4.2.3)
2.1.4 :001 > ActiveRecord::Base.connection.tables.sort[1]
=> "actstream_follow"
2.1.4 :002 > ActiveRecord::Base.connection.tables.sort.each do |table|
2.1.4 :003 > next if table.match(/\Aschema_migrations\Z/)
2.1.4 :004?> klass = table.singularize.camelize.constantize
2.1.4 :005?> puts "#{klass.name} has #{klass.count} records"
2.1.4 :006?> end
PG::UndefinedTable: ERROR: relation "actstream_actions" does not exist
是的。你正在寻找的术语是“反向工程”,意思是“反向工程化数据库以创建模型” –
1,000,000次是的!这个小宝石在大约3秒内为我创造了140个模型,并为我节省了大约一周的工作时间。谢谢! – tim5046