2009-07-13 78 views
0

不确定如果我搞砸了我的术语,该如何问这么抱歉。在rails上使用jruby时,如何查询两个(或多个数据库)以返回到视图页面?如何在rails网页上的jruby中间查询数据库?

我已经看到了我在database.yml中建立数据库连接的位置,它工作正常,但我现在想知道如何超越这个,用jdbc打开许多数据库并将它们放入一个网页视图中。

我的标题是这样说的,因为我习惯了非orm非mvc的处事方式。例如,需要在经典的asp中查询somethingn?只需创建对象并发出html和每个数据库的数据集。麻烦,但至少我知道该怎么做。需要在asp.net中打五个数据库?只要有一个控制,并在代码隐藏绑定到表适配器或做一个SQL查询。在这里,我只是失去了如何做到这一点。

如何在Jruby上使用jdbc查询多个数据库,不同的数据库(oracle,sql server等),并将它们放在一个页面中?做这个“正确”的方式,这样我就不会看到我的jror应用程序看起来像传统的ASP。

编辑:我认为像this可能是我在找什么,但我不知道如何将两组数据放在同一页上。

回答

1

将查询逻辑放入适当的模型(主数据库表的activerecord模型,其他数据源的非主动记录模型)。这些应该有意向揭示方法名称。

在控制器动作查询您的网页需要的信息。将这些数据加载到实例变量中。

在视图中,与实例变量进行简单交互以使用ERB显示它们。如果你在你的视图中发现逻辑,你做错了,应该重构。

对于多个DB,这可能有帮助http://tomayko.com/writings/rails-multiple-connections