Я пытаюсь вызвать сценарий Ruby (, который подключается к базе данных postgres )с помощью контроллера rails, описанного ниже, однако, похоже, возникают проблемы с загрузкой одного из файлов PG gem. Я установил для своего оператора require значение «pg» и также попробовал абсолютный путь (require/usr/local/rvm/gems/ruby-1.9.3-p194@railsTest/gems/pg-0.14.0/lib/pg/
). Файл «pg _ext» действительно присутствует в каталоге. Кроме того, я могу без проблем запустить сценарий ruby отдельно (dbrubyscript.rb ), однако, когда к этому уравнению добавляются рельсы, он вылетает с ошибкой cannot load such file -- pg_ext
.
Любое указание здесь будет высоко оценено, так как я не смог найти в Интернете ничего, что устраняло бы эту проблему
. Контроллер рельсов:
class TestdlController < ApplicationController
def runmyscript
load "/usr/local/rvm/my_app/ruby_scripts/reports/dbrubyscript.rb"
send_file '/usr/local/rvm/tmp/failedtests.csv', :type => 'text/csv', :disposition => 'inline'
flash[:notice] = "Reports are being processed..."
end
end
Файл.rb (dbrubyscript.rb )имеет следующее:
require 'rubygems'
require 'pg'
connects to (production) database
@conn = PGconn.connect("zzzzz.test.prod", 5432,"","","yyyyy_prod","postgres", "xxxxxx")
.....
Ошибка трассировки: Ошибка загрузки в TestdlController #runmyscript
cannot load such file -- pg_ext
Rails.root: /usr/local/rvm/my_app Application Trace | Framework Trace | Full Trace app/controllers/Testdl_controller.rb:3:in `runmyscript'
This error occurred while loading the following files:
/usr/local/rvm/my_app/ruby_scripts/reports/dbrubyscript.rb
/usr/local/rvm/gems/ruby-1.9.3-p194@railsTest/gems/pg-0.14.0/lib/pg/
pg_ext