ruby-on-rails - 如何在Ruby On Rails中使用内部联接

标签 ruby-on-rails ruby-on-rails-3

我在 rails 上工作。

我的需要是

@accountUrl = Account.find_by_id(current_account_id)

@details = Detail.find_by_acc_id(@accountUrl.id)

如何从上面的示例编写内部联接查询

可以任何一个。

最佳答案

在这种简单的情况下,Rails不使用联接,而是“以代码形式”联接:

Account.includes(:details).where(:id => current_account_id).first

它将进行两个单独的查询。

如果需要选择条件,则必须“手动”(或通过作用域)加入
Account.joins(:details).where("details.name" => selected_detail).first

这将创建一个INNER JOIN,并且仅返回满足条件的帐户。

关于ruby-on-rails - 如何在Ruby On Rails中使用内部联接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12702506/

相关文章:

ruby-on-rails - Paypal 按钮回调

ruby-on-rails - 如何使用 rdoc 列出未记录的模块/类/常量/方法?

javascript - Node.js 是构建完整网站的好选择吗?

mysql - 为了 Heroku,从 MySQL 切换到 PostgreSQL for Ruby on Rails

ruby-on-rails - 在 rails 3 和 rails 4.1 之间共享 cookie

ruby-on-rails-3 - Active Admin + Authlogic 集成 - Rails 3.2

ruby-on-rails - rails 3 : yield/content_for with some default value?

ruby-on-rails - 为什么我将参数传递给 session.upload_from_file 时得到 'no implicit conversion of ActionController::Parameters into String'

ruby-on-rails-3 - 如何 "lock"一条记录不被更新或删除?

ruby-on-rails - 使用 Ruby 上的 Prawn 将图像添加到 pdf 文件