datamapperを使用して、既存のデータベーススキーマからモデルを生成することは可能ですか?したがって、移行の逆を行うには、モデルを取得してSQLを生成します。私が欲しいのは、データベーススキーマがモデルを生成することです。
質問する
1222 次
2 に答える
2
https://github.com/yogo/dm-reflectionまたはそのフォークのいずれかを確認してみてください..
于 2012-05-09T23:35:45.227 に答える
1
ついに、これまでのところ最善の解決策はdm-is-reflective
プラグインを使用することであることがわかりました: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
于 2012-05-14T11:57:04.617 に答える