草庐IT

ruby-on-rails - 使用和不使用 bundle exec 运行 rake 命令的区别

使用和不使用bundleexec运行rake命令的主要区别是什么?我看到很少有帖子说当您使用bundleexec运行命令时,它将在gem文件中定义的gems版本范围内运行。如果是这样,那么应该强制使用bundleexec运行rake命令? 最佳答案 bundleexecrakesome:task在您的包的上下文中运行rake任务。你没有明确提到Rails,但我看到你的帖子被标记为Rails,所以一个设计的例子可能如下所示:出于某种正当理由,您在系统上安装了虚构的whateva-whatevagem的2.0版。您决定要从某个地方下载一

ruby-on-rails - PG::Error: 错误:关系 schema_migrations 的权限被拒绝

不确定为什么会遇到此错误。我已经正确设置了postgresql,只是运行了一个迁移,然后rakedb:migrate并且我收到了标题错误。这是我的:数据库.ymldevelopment:adapter:postgresqlencoding:unicodedatabase:my_blog_developmentpool:5username:my_blogpassword:test:adapter:postgresqlencoding:unicodedatabase:my_blog_testpool:5username:my_blogpassword:production:adapter:

ruby - PG Ruby Gem 在设置 PostgreSQL 连接时是否使用 pgpass?

我正在编写一个使用PGgem设置数据库连接和发送文件的Ruby脚本。我正在构建它以获取主机名、用户名、数据库名称和端口的变量。在我编写的用于管理一些伴随任务的Shell脚本中,我依赖于存储在~/.pgpass中的密码,而不是让用户为psql输入密码,因为有很多交易,有时输入密码可能会无缘无故地失败(输入20次就很糟糕)。当没有明确提供密码时,PG会访问相同的源吗?按照惯例,我已将密码包含在文件中,但由于这是被推送到一个内部可用的存储库,我不希望在我的文件中包含该信息。我现在正在尝试测试该功能,但想知道SO社区中是否有人知道这个问题的答案。如果PG不访问.pgpass文件,有没有办法在不

ruby - 当 shell 环境不存在时,如何使用 RVM 从特定的 Ruby 版本运行 "bundle exec"

好吧,我要坦白-我仍然运行着大量的FCGI设置(只是配置了很多服务器)。我正在尝试使其适应rvm。在fcgi设置中,我可以指定要执行的命令行命令以运行我的应用程序(Sinatra、Rack、Bundler等),这就是我在没有rvm的情况下所做的"bin-path"=>"bundleexecrackup","bin-environment"=>("RACK_ENV"=>"development"),假设我的rackup文件只是config.ru。现在,在我的Mac上这有效:"bin-path"=>env.HOME+"/.rvm/gems/ruby-1.9.2-p180/bin/bundl

ruby - 尝试安装 pg gem : Brew bad interpreter error and not existing ruby version 时

我在重新安装ruby​​、rails、xcode等时确实犯了一些错误(甚至可能我已经删除了我的系统Ruby安装:/)这是我现在拥有的:系统:OSX10.8.2(64位)whichruby​​给我/usr/local/bin/ruby我已经安装了ruby1.9.3p286、Rails3.2.8和rvm1.16.17(stable)我已经按照以下提示安装了Ruby和Rails:http://hivelogic.com/articles/compiling-ruby-rubygems-and-rails-on-snow-leopard接下来我想运行geminstallpg但出现错误:Nosu

ruby - 更改 ruby​​ 方法上下文/使用 instance_exec 调用方法

首先,对于简短版本:方法定义不就是一个block吗?为什么我不能做类似的事情:obj.instance_exec(&other_obj.method(:my_method))目标是在单独类的实例上下文中运行某些模块方法?尽管调用了“instance_exec”,但该方法似乎并未在“obj”的上下文中执行。我能弄清楚如何完成此操作的唯一方法是将“my_method”的所有代码包装在一个proc中,然后改为按以下方式调用:obj.instance_eval(&other_obj.my_method)但我想避免在procs中封装我所有的模块方法。现在,对于长版本:我正在尝试创建一个模块化的外

ruby-on-rails - Errno::EACCES:运行捆绑时权限被拒绝,它命中 json 1.8.1,pg 0.17

我刚买了一台新笔记本电脑,并使用MigrationAssistant完全转移了所有内容。似乎一切正常,并且都在适当的位置,所以我不知道这是否是问题所在。我对调试这样的环境错误还是很陌生。我一直在Windows上开发一个Rails项目,这台笔记本电脑是MacOSX10.8。我之前已经在上面克隆了一个GitHub项目并且运行良好。这是githubrepo以供引用。这个项目在我运行bundle时遇到错误错误Usingrake(10.1.0)Usingi18n(0.6.1)Usingmulti_json(1.8.2)Usingactivesupport(3.2.13)Usingbuilder(

ruby-on-rails - 运行时出现段错误 'bundle exec rake'

运行后:$bundleexecrake我收到这个错误:/Users/user/Documents/Code/spree_gem/vendor/bundle/gems/json-1.8.2/lib/json/ext/parser.bundle:[BUG]Segmentationfaultat0x00000000000418ruby2.1.5p273(2014-11-13revision48405)[x86_64darwin14.0]伴随着这个:/Users/user/Documents/Code/spree_gem/vendor/bundle/bin/rake:23:in`'/Users

ruby - PG::错误:另一个命令已经在进行中

我有一个导入程序,它获取电子邮件列表并将它们保存到postgres数据库中。下面是无表导入器类中的一段代码:query_temporary_table="CREATETEMPORARYTABLEsubscriber_imports(emailCHARACTERVARYING(255))ONCOMMITDROP;"query_copy="COPYsubscriber_imports(email)FROMSTDINWITHCSV;"query_delete="DELETEFROMsubscriber_importsWHEREemailIN(SELECTemailFROMsubscriber

ruby - bundle exec rake test 什么都不做

我正试图让我的头脑“弄脏”TDD,但出于某种原因,当我在命令行上运行bundleexecraketest时,没有任何反应。这是我的RakeFile:require'rake/testtask'Rake::TestTask.newdo|test|test.libs:test这是我的测试文件:require'test/unit'classTestMygem 最佳答案 我忘了将这一行添加到我的RakeFiletest.test_files=FileList['tests/test_*.rb']总而言之,这是我的最终RakeFilerequ