在datamapper sinatra中获取所有模型名称

时间:2018-09-27 18:51:59

标签: ruby sinatra datamapper

是否可以通过DataMapper检索数据库中存在的所有模型名称?它可以是任何DB sqlite,MySQL。

目前,我正在使用sqlite适配器检索此类信息

adapter = DataMapper.repository(:default).adapter
tableinfo = adapter.select("select * from sqlite_master where type='table'")

我希望它独立于DB。但是,如果不可能的话,至少要有相当于MySQL的版本。

谢谢。

1 个答案:

答案 0 :(得分:0)

好吧。我对DataMapper进行了更多研究。仔细阅读文档,找到此https://www.rubydoc.info/github/datamapper/dm-core/DataMapper/Model#descendants-class_method

基本上它说明的是:

DataMapper::Model.descendants # Return all models that extend the Model module

不确定这是否是正确的处理方式,但是它已经解决了我的查询。

谢谢。