datamapper를 사용하면 기존 데이터베이스 스키마에서 모델을 생성 할 수 있습니까? 따라서 마이그레이션을 역으로 수행하면 모델을 가져 와서 SQL을 생성합니다. 필자가 원하는 것은 데이터베이스 스키마가 모델을 생성하는 것입니다.기존 데이터베이스에서 datama 모델 생성
3
A
답변
1
를 확인하려고합니다.
기존 데이터베이스 스키마를 반영하는 DataMapper 모델에 대한 코드는 생성되지 않지만 해당 속성 액세스 방법은 자동으로 사용할 수 있습니다 (당연히이 플러그인을 계속 사용하는 한).
require 'data_mapper'
require 'dm-is-reflective'
DataMapper.setup(:default, "postgres://user:[email protected]/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
2
는 지금까지 최고의 솔루션이 dm-is-reflective
plugin: https://github.com/godfat/dm-is-reflective를 사용하는 것을 발견, 마지막으로 https://github.com/yogo/dm-reflection 또는 포크의 ..
감사 @TomMeinIschmidt 귀하의 답변 : 여기
사용의 예입니다. 나는 공식 저장소 인 Yogo 포크를 가리 키도록 답변을 업데이트했습니다. 하지만 나는 그것을 시도한 행운을 보지 못했습니다. 'dm-reflection '은 꽤 죽었습니다. Yogo 저장소에는'DataMapper 1.0 '으로 작업 할 것으로 예상되는 지점이 있지만 적어도 저에게는 작동하지 않습니다. 설치가 작동하지 않았지만 해결했지만 여전히 작동하지 않았습니다. 나는 그것이 깨진 의존성을 가지고 있다고 생각한다. 나는 지금 내가 게시 한 다른 해결책을 발견했다. –