0

はい、推奨されていないことはわかっていますが、コントローラーで生の SQL を実行したいので、その方法を確認してください。

class FooController < ApplicationController
  def foo
    boz = 'd'
    connection.select_rows('select * from dual').each do |r|
      boz = r[0]
    end

    [boz: boz]
  end
end

そして、うまくいけば、私のビューは「boz is "X"!」をレンダリングします。

もちろん、接続が定義されていないため、これは失敗します。ActiveRecord::connection を試してみましたが、connection は定数ではなくインスタンス メソッドのようです。明らかに、現在のトランザクションに適切な接続オブジェクトが必要です。

どうすれば入手できますか?ruby のドキュメントは少し難解です。

4

3 に答える 3

1
ActiveRecord::Base.connection.execute('select * from dual')
于 2013-10-09T01:48:50.070 に答える
0

見つけた - ActiveRecord::Base.connection

...しかし、誰かが私を殴ったようです。タ。

于 2013-10-09T01:51:28.460 に答える