我正在迁移我拥有的sinatra应用程序,它充当我们DNS数据库的后端UI。我已经在sinatra应用程序中获得了DM配置,但是想将它迁移到padrino,这样我就可以使它更清晰,更容易阅读,但也因为我想玩padrino。如果我只生成一个新模型,我是否可以在该模型中执行datamapper映射,包括指定db应用程序并避免使用生成器而不是使用生成器?
我需要做什么才能访问不同数据库上的模型,理想情况下不会破坏该数据库(只读)
答案 0 :(得分:1)
是的,所以你实际上可以做到这一点,我发现了一些试验和错误。在config / boot.rb中指定datamapper数据库源,其中有一个标记为Padrino.after_load的部分,您需要在此处添加新的DataMapper源
DataMapper.setup(:myalternatedatasource, "MY_ALTERNATE_DB_URL
然后在您的模型文件中,您需要指定
def self.default_repository_name
:myalternatedatasource
end
它会全部按预期工作!