草庐IT

rb-appscript

全部标签

ruby-on-rails - 在 gem 中使用 schema.rb

我希望rakedb:schema:load使用db/schema.rb,它不在我的应用程序中,而是在我的一个gem中。这已经适用于db:seed通过将config.paths['db/seeds']=Core::Engine.paths['db/seeds'].existent放入我的application.rb。(Core是一个gem,也是一个Rails引擎)。但是,config.paths和config.paths['db']=Core::Engine中没有db/schema.rb路径。paths['db'].existent无效。完成这项工作最简单的方法是什么?

ruby - Bundler 在直接调用 .rb 文件时工作,在通过其他 ruby​​ 脚本的 exec 调用时失败

我需要使用Bundler+Gemfile从另一个使用Bundler+Gemfile的ruby​​script1.rb调用一个ruby​​script2.rb。我注意到script2.rb可用的gem只有script1.rb的gem。当script1.rb调用script2.rb时,script2.rb独有的gem不可用。当直接从bashshell调用script2.rb时,一切都可用。我确定这不是ENV问题,我在两个文件中使用diff和辅助代码对它们进行了比较,并进行了一些修改以使它们匹配。File.open("script2_env.txt",'wb'){|f|f.write(JSO

ruby - 安装报错rb-inotify安装

我正在尝试使用以下命令安装rb-inotifysudogeminstallrb-inotify我得到了以下错误Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingrb-inotify:ERROR:Failedtobuildgemnativeextension./usr/bin/ruby1.9.1extconf.rb/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in`require':cannotloadsuchfile--mkmf(LoadError

ruby - Ubuntu 10.04 上的 ruby​​gems 更新后 dev_appserver.rb 无法启动

我安装了ruby​​gems1.3.5(或1.3.6?),然后在很长一段时间后再次进行了sudogemupdate。一些gems提示他们需要更新的gems版本。因为sudogemupdate--system在Ubuntu上被停用,所以我遵循了以下步骤:HowcanIgetRubyGems1.3.6onUbuntu10.4但现在我无法启动dev_appserver.rb,它说:=>BundlinggemsERROR:Whileexecutinggem...(RuntimeError)Unknowncommandbundle我还尝试再次执行sudogemupdate和sudogemupda

ruby - "ruby filename.rb"没有打开我的文件

我是Ruby的新手,是脚本语言的新手,但并不是编程的新手。我有大约一年的Java经验,但整个命令行的事情让我很困惑。我正在学习本教程,只是为了它:http://www.ruby-lang.org/en/documentation/quickstart/3/在我被要求保存文件并从IRB运行它之前,一切都很简单。我在IRB中输入“rubyri20min.rb”(当然没有引号)。我收到此错误:NameError:undefinedlocalvariableormethod'ri20min'formain:Objectfrom(irb):1我做错了什么?该教程似乎暗示该文件应该通过IRB运行;

ruby - 使用 RSpec 测试纯 Ruby bin/my_app.rb 应用程序?

我有一个用纯Ruby编写的命令行(非RAILS)应用程序,我正在通过Cucumber和RSpec运行它。它遵循lib、bin、spec和feature目录的典型应用程序层次结构。到目前为止,我一直遵循编写失败的Cucumber功能/场景的传统流程,下降到RSpec以驱动支持的lib文件,然后让场景通过。不幸的是,在“bin/my_application.rb”中推出主应用程序入口点时,这似乎并不那么直接。对我来说主要问题是我不是在描述RSpec中的类,它是一个顺序Ruby脚本,用于管理应用程序的类并通过命令行参数和选项进行初始化。“bin/my_application.rb”只是一个小

ruby 需要 './blahblah.rb' 与需要 File.expand_path ('../blahblah' , __FILE__)

有什么区别require'blahblahlblah.rb'对比require'./blahblah.rb'对比requireFile.expand_path('../blahblah',__FILE__)我看到它们都被使用了。想知道什么更好,在什么情况下一个比另一个更好。谢谢! 最佳答案 requireblaba.rb正在搜索您的默认gem路径以加载文件,这取决于您使用的ruby​​版本。例如,RVM将在$HOME/.rvm/rubies/...中搜索,而系统范围的ruby​​将在发行版的默认路径中搜索。请注意,这是gems所在的

ruby-on-rails - 在 Rails 中运行 bundle exec rspec spec/requests/static_pages_spec.rb 时出错

我正在关注这篇文章,我可以在下面的这个ruby​​文件中编写这段代码,主页确实有示例应用程序,但当我运行bundleexec时,它仍然说静态页面主页应该有内容“示例应用程序”rspec规范/requests/static_pages_spec.rbspec/requests/static_pages_spec文件代码:require'spec_helper'describe"Staticpages"dodescribe"Homepage"doit"shouldhavethecontent'SampleApp'"dovisit'/static_pages/home'page.should

ruby - 在 Chef 的提供者的 default.rb 中使用 File::read

我正在尝试创建一个LWRP,它将调用在其自身中定义的资源。我的Recipe结构如下:在机器Recipe的提供者中,我有如下代码片段:require'chef/provisioning'#driverforcreatingmachinesrequire'::File'defget_environment_json@@environment_template=JSON.parse(File::read(new_resource.template_path+"environment.json"))return@@environment_templateend代码只是试图读取一个json文件,

ruby-on-rails - 为什么 schema.rb 在 rails 5.1.0 中的格式不正确?

以前schema.rb是快速查看列默认值以及它们是否可以为null的好地方,但现在很困惑。例如,这是一个用户表:create_table"users",force::cascadedo|t|t.string"name",null:falset.string"email",null:falset.string"locale",default:"en-ca",null:falset.string"password_digest",null:falset.datetime"created_at",null:falset.datetime"updated_at",null:falset.ind