Rails/Ruby/Postgres的 - LoadError无法加载这样的文件 - pg_ext
我想调用一个Ruby脚本(它连接到一个postgres数据库)下面的rails控制器,但它似乎有问题加载之一PG宝石文件。我已经将我的要求声明设置为要求'pg'并尝试了绝对路径(要求/usr/local/rvm/gems/[email protected]/gems/pg-0.14.0/lib/pg/
)。文件'pg_ext'实际上存在于该目录中。另外,我可以独立运行ruby脚本,没有任何问题(dbrubyscript.rb),但是当rails被添加到这个等式中时,会出现cannot load such file -- pg_ext
错误。Rails/Ruby/Postgres的 - LoadError无法加载这样的文件 - pg_ext
这里的任何方向将不胜感激,因为我一直没能在网上能解决这个问题
Rails的控制器发现什么:
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")
.....
跟踪错误: LoadError在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/[email protected]/gems/pg-0.14.0/lib/pg/
pg_ext
尝试添加一行到您的Gemfile:
bundle install
Rails的用途:
gem "pg"
然后通过命令行运行捆绑Bundler来管理你的宝石和依赖。您可以在这里阅读更多关于Bundler背后的想法:http://gembundler.com/v1.2/rationale.html
尝试运行ruby /usr/local/rvm/gems/[email protected]/gems/pg-0.14.0/lib/ pg/ext/extconf.rb并查看你得到的错误。这帮助我确定在我的情况下,我的PostgreSQL客户端太旧了。由于您似乎安装了current-ish版本,因此您的错误可能会有所不同。
我有同样的问题。 我有一个独立的红宝石脚本。它通过pg
连接到postgres
并且如果我直接从shell
运行它,它就会工作。
如果我试图通过rspec运行它,我得到错误cannot load such file -- pg
。
已解决:rspec的问题是,pg
宝石未在Gemfile
中定义。将pg放入Gemfile
后,通过rspec重新测试,它工作正常。
你有没有用gem安装'pg'gem的依赖关系? – AJcodez 2012-07-30 08:19:57
我不确定是否安装了依赖关系的gem。当我最初安装gem时,我使用了下面的命令:gem install pg - --with-pg-config ='/ usr/local/PostgreSQL/9.1/bin/pg_config' – user1562080 2012-07-30 14:15:34
是不是应该添加'gem' pg''到Rails中的Gemfile,并通过运行'bundle install'来安装所有的依赖关系的gem? – rekado 2012-12-05 08:18:57