datamapper是否可以从现有数据库模式生成模型?所以,做一个迁移的逆过程,它接受模型并生成sql。我想要的是给出一个数据库模式生成模型。
答案 0 :(得分:2)
尝试检查https://github.com/yogo/dm-reflection或其任何分叉..
答案 1 :(得分:1)
最后,我发现到目前为止最好的解决方案是使用dm-is-reflective
plugin: https://github.com/godfat/dm-is-reflective。
它不会生成反映现有数据库架构的DataMapper模型的代码,但它的属性访问方法是自动可用的(当然,只要你继续使用这个插件)。
以下是使用示例:
require 'data_mapper'
require 'dm-is-reflective'
DataMapper.setup(:default, "postgres://user:pwd@localhost/db")
class Table
include DataMapper::Resource
is :reflective #activate dm-is-reflective
reflect #reflects eeach property. You can be more specific (look at plugin documentation)
end
DataMapper.finalize
#Even if no field is defined, all of them are accessible
entry = Table.first(nil, {:id => 469})
print entry.anotherField