Tag: rubygems

Jekyll服务错误:找不到gem jekyll(> = 0.a)(Gem :: GemNotFoundException

在做sudo jekyll serve我收到以下错误: Users/myusername/.rvm/rubies/ruby-2.4.2/lib/ruby/site_ruby/2.4.0/rubygems.rb:271:in ‘find_spec_for_exe’: can’t find gem jekyll (>= 0.a) (Gem::GemNotFoundException) from /Users/myusername/.rvm/rubies/ruby-2.4.2/lib/ruby/site_ruby/2.4.0/rubygems.rb:299:in ‘activate_bin_path’ from /Users/myusername/.rvm/gems/ruby-2.4.2/bin/jekyll:23:in ” from /Users/myusername/.rvm/gems/ruby-2.4.2/bin/ruby_executable_hooks:15:in ‘eval’ from /Users/myusername/.rvm/gems/ruby-2.4.2/bin/ruby_executable_hooks:15:in ” 如果有帮助: jekyll -v返回jekyll 3.6.2 ruby -v返回ruby 2.4.2p198 (2017-09-14 revision 59899) [x86_64-darwin15] gem -v返回2.6.14 bundle -v返回Bundler version 1.16.0 在我的Gem文件中,我有: ruby’2.4.2′ rmv list输出: ruby-2.3.5 [ x86_64 ] =* ruby-2.4.2 [ x86_64 ] # […]

如何在ruby中将文件从文件读入数组

有没有办法将net-ssh gem中的HOST,USER,PASS varibales视为一个数组,并为它们提供多个值? 我目前有一个带有HOST,USER和PASS值的外部文本文件,但我需要将这些传递给net-ssh gem中的上述变量。 任何帮助和编辑澄清这个问题表示赞赏! 🙂

DoubleRenderError(渲染和/或重定向,并在redirect_to或self.render末尾添加’并返回’

每次我将消息插入数据库时​​,我都有一个消息传递系统。 它插入重复项即时获取AbstractController::DoubleRenderError (Render and/or redirect were called multiple times in this action) 。 我尝试在redirect_to或self.render结束时添加and return ,但它没有帮助。 它似乎是从create方法发生的问题 # app/controllers/messages_controller.rb class MessagesController < ApplicationController before_action :authenticate_user! before_action :set_conversation def index if current_user == @conversation.sender || current_user == @conversation.recipient @other = current_user == @conversation.sender ? @conversation.recipient : @conversation.sender @messages = @conversation.messages.order("created_at DESC") else redirect_to conversations_path, alert: "You […]

无法找到gem’铁轨’的头痛

我在Mac OS X 10.6 Snow Leopard上。 我刚刚更新了我的Ruby东西: sudo gem update 不幸的是,它打破了一切。 当我尝试在我的网站目录中运行一个简单的命令时,例如: rails generate model User 它失败了,出现了这个错误: 无法在Gemfile中列出的任何gem源中找到gem’rail(= 3.0.3,runtime)’。 尝试运行bundle install 。 所以我尝试运行bundle install rails 。 它成功了! 所以我试着运行rails 。 它失败了。 所以我尝试输入以下命令获取Rails版本: rails -v 哪个失败了这个错误: 在任何来源中都找不到rake-0.8.7 尝试运行bundle install 。 但它不仅失败了,它还在我的网站目录中创建了一个空文件夹rails/ruby/1.8 。 这对我来说是一场彻底的灾难,因为我只是Ruby和Ruby on Rails的初学者,甚至是终端。 任何帮助将非常感激。 谢谢。

在rails上的ruby中一次更新多个属性

我有一个页面,用户可以在当前线程对话中查看消息列表。 他们可以使用删除链接删除每条消息(每个消息的每个循环内的链接): :delete, :confirm => “Are you sure?”, :title => message.body %> 这基本上将它们连接到我的messages_controller中的动作: def destroy @message = Message.find(params[:id]) @message.update_attribute(‘sender_status’, 1) if @message.sender_id == current_user.id @message.update_attribute(‘recipient_status’, 1) if @message.recipient_id == current_user.id @message.destroy if @message.sender_status == 1 && @message.recipient_status == 1 flash[:success] = “Message deleted” redirect_to :back end 我现在想要的是在所有消息之前的一个链接(所以我不会把它放在每个块中)。 此链接将被称为“全部删除”,而不是使用值1更新1属性,它将所有属性(sender / recipient_status)更新为1,这样用户就不必单击每个单独的消息删除链接。 我有点担心如何做到这一点。 我不使用复选框,而是删除链接,所以对于删除所有我宁愿使用链接。 请问任何机构能为我提供一个解决方案吗? 我真的很感激。 我以为我昨晚睡在上面,早上有个主意但仍然没有想到。 […]

Ubuntu instaled ruby​​-dev但仍然无法安装gem nokogiri

我正在尝试通过以下方式安装gem nokogiri: sudo gem install nokogiri 但我得到这个错误: ERROR: Error installing nokogiri: ERROR: Failed to build gem native extension. current directory: /var/lib/gems/2.5.0/gems/nokogiri-1.8.4/ext/nokogiri /usr/bin/ruby2.5 -r ./siteconf20181003-5678-1ub6p51.rb extconf.rb mkmf.rb can’t find header files for ruby at /usr/lib/ruby/include/ruby.h 我搜索谷歌,他们说,因为没有ruby-dev。 所以我通过以下方式安装ruby-dev: ~$ sudo apt-get install ruby-dev ~$ dpkg -l | grep ruby-dev ii ruby-dev:amd64 2:2.3.0+1bbox1~xenial1 amd64 Header files for compiling […]

使用Serverspec进行Docker映像构建测试,检查空gems缓存失败

我目前遇到的问题是通过Serverspec测试Docker镜像构建。 简而言之,我想要做的是确保在图像构建期间显式清除Ruby gems构建缓存,例如通过在Dockerfile中发出rm -rf /usr/lib/ruby/gems/*/cache/*.gem 。 我正在使用的Dockerfile骨架如下所示: # Dockerfile FROM alpine:3.7 RUN apk add –no-cache \ dumb-init \ ruby \ && apk add –no-cache –virtual .build-deps \ build-base \ ruby-dev RUN gem install –no-rdoc –no-ri json \ && gem install –no-rdoc –no-ri oj RUN apk del .build-deps \ && rm -rf /var/cache/apk/* \ /tmp/* /var/tmp/* […]

我如何使用冷冻Capistrano?

背景故事 我在Rails 2.1上并且需要将Capistrano gem冻结到我的供应商文件夹(因为我的主机已经打破了他们的cap gem依赖关系,我想让自己尽可能独立)。 在我的本地Windows机器上,我已经将以下内容放在我的环境中.rb config.gem “capistrano”, :version => “2.5.2” config.gem “net-ssh”, :lib => “net/ssh”, :version => “2.0.4” config.gem “net-scp”, :lib => “net/scp”, :version => “1.0.1” config.gem “net-sftp”, :lib => “net/sftp”, :version => “2.0.1” config.gem “net-ssh-gateway”, :lib => “net/ssh/gateway”, :version => “1.0.0” gem已经安装好了,所以我冻结了它们。 检查…… >rake gems … [F] capistrano = 2.5.2 [F] net-ssh = […]

如何在RubyMine中运行’gem install bundler’?

我在RubyMine IDE中更新Ruby时遇到了麻烦。 我收到一个错误报告,我需要运行gem bundle install但是我在IDE中找不到运行该命令的位置。 我已经在我的Ubuntu控制台中运行它,一切正常,但我在IDE中找不到可以用来运行命令和更新该环境的控制台。 我认为这是一个简单的解决方案,但谷歌找不到多少帮助。 任何帮助将非常感激。

脚本/控制台不起作用; 报告“缺少Railsgem。 请`gem install -v = rails` …“即使rails显示为已安装

我正在尝试学习RoR,并且运行脚本/控制台失败,返回: 加载开发环境(Rails 2.3.5)缺少Rails gem。 请使用gem install -v= rails ,在config / environment.rb中更新您已安装的Rails版本的RAILS_GEM_VERSION设置,或注释掉RAILS_GEM_VERSION以使用安装的最新版本。 gem list和sudo gem list显示rails(2.3.5)已安装。 此外,脚本/服务器工作正常。 我发现一些消息来源表明问题可能是机架(1.1.0),所以我恢复到1.0.1,但它没有帮助。 我喜欢你们的任何建议,因为我真的想学习RoR,即使是迄今为止我见过的短暂内容。 编辑:@ zed_0xff: 好的,这是./script/console –trace的结果: /usr/lib/ruby/1.8/optparse.rb:1450:in `complete’: invalid option: –trace (OptionParser::InvalidOption) from /usr/lib/ruby/1.8/optparse.rb:1448:in `catch’ from /usr/lib/ruby/1.8/optparse.rb:1448:in `complete’ from /usr/lib/ruby/1.8/optparse.rb:1261:in `parse_in_order’ from /usr/lib/ruby/1.8/optparse.rb:1254:in `catch’ from /usr/lib/ruby/1.8/optparse.rb:1254:in `parse_in_order’ from /usr/lib/ruby/1.8/optparse.rb:1248:in `order!’ from /usr/lib/ruby/1.8/optparse.rb:1339:in `permute!’ from /usr/lib/ruby/1.8/optparse.rb:1360:in `parse!’ from /var/lib/gems/1.8/gems/rails-2.3.5/lib/commands/console.rb:11 from […]