Mysql 对不同的数据库和表进行一次性查询

Mysql 对不同的数据库和表进行一次性查询,mysql,ruby-on-rails,wordpress,activerecord,Mysql,Ruby On Rails,Wordpress,Activerecord,我有一个rails应用程序,旁边有一个wordpress博客(完全分别位于/blog) 客户希望在rails应用程序的主页上看到最新的博客文章,因此我需要对word press数据库进行一次性mysql查询。我将如何在rails应用程序中执行此操作。就数据库而言,press这个词完全来自rails 干杯。假设可以使用相同的数据库凭据在相同的MySQL服务器上访问,最简单的方法是运行查询,在查询的FROM子句中指定数据库和表,如下所示: ActiveRecord::Base.connection.

我有一个rails应用程序,旁边有一个wordpress博客(完全分别位于/blog)

客户希望在rails应用程序的主页上看到最新的博客文章,因此我需要对word press数据库进行一次性mysql查询。我将如何在rails应用程序中执行此操作。就数据库而言,press这个词完全来自rails


干杯。

假设可以使用相同的数据库凭据在相同的MySQL服务器上访问,最简单的方法是运行查询,在查询的
FROM
子句中指定数据库和表,如下所示:

ActiveRecord::Base.connection.select_one(
    "SELECT * FROM blog_database.posts ORDER BY created_at DESC LIMIT 1")
select\u one
将列的散列返回值。有关可在
连接
对象上使用的方法的更多信息,请参阅

第二个选项是创建ActiveRecord的子类并调用
build\u connection

class Blog < ActiveRecord::Base
  establish_connection :blog

  def self.most_recent_post
    connection.select_one("SELECT * FROM posts ...")
  end
end
这样做的好处是,现在您有了一个很好的位置来定义一个方法(在Blog类中,作为类方法)来获取数据,正如我前面所做的那样

这两种策略在Rails2.x或3.x上都可以很好地使用

Blog.connection.select_one("SELECT * FROM posts ...")