Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
 Ruby_IT技术博客_编程技术问答 - 「Fatal编程技术网」

从Ruby打开RSA私钥

我想我知道如何创建自定义加密的RSA密钥,但如何才能像ssh keygen那样读取加密的RSA密钥 我知道我能做到: OpenSSL::PKey::RSA.new(File.read('private_key')) Net::SSH::KeyFactory.load_private_key 'keyfile', 'passphrase' 但是OpenSSL要求我提供密码短语。。。如何将其作为参数传递给OpenSSL 我如何创建一个与ssh-keygen生成的兼容的 我这样做是为了创建私有加密

Ruby &引用;Zlib::GzipFile::CRCError crc error“;安装gem软件包时

[root@blanee本地缓存]#gem安装dm-core-0.9.11.gem 错误:执行gem时。。。(Zlib::GzipFile::CRCError) 压缩数据无效--crc错误 [root@blanee本地缓存]#gem安装ParseTree-3.0.5.gem 错误:执行gem时。。。(Zlib::GzipFile::CRCError) 压缩数据无效--crc错误 我有很多gem软件包要安装,但其中一些可以成功安装,但有些不能。我的操作系统是CentOS 5 顺便说一句,包装很好。

Ruby Rails3路由错误。没有路由匹配{:action=>;";destroy";

我在跟随导游 Ruby 1.9.2p0 Rails 3.0.0 但是当我尝试添加时,我被锁定在6.2/6.3 我得到了错误(我将Post示例切换为Specie) ActionController::主索引中的路由错误 没有路由匹配{:action=>“destroy”,:controller=>“species”} 航站楼历史记录: 捆绑安装 rake数据库:创建 rails生成控制器主索引 rm public/index.html rails生成脚手架种类名称:string拉丁语:string

Ruby “确定”;“真实性”;什么表情?

可能的重复项: 给定如下所示的数组(例如): 例如,有没有一种更简单的方法来确定哪些元素是实际的布尔值而不必求助于此 value === TrueClass || value === FalseClass 依赖数组中的位置不是一个选项,因为它会因情况而异。您可以尝试(true&value)=value。括号中的部分似乎总是返回布尔值;如果该值最初不是布尔值,则它将不等于结果。然而,bool会。让我想知道为什么没有一个Boolean类TrueClass和falsclass继承自……啊哈-谢谢

在Ruby中生成类似facebook的url摘要

ruby中是否有任何gem可以生成url摘要,类似于facebook在您发布链接时所做的操作。据我所知,没有任何gem可以生成url摘要,但您自己的url摘要应该不会太难。在最简单的情况下,您可以只要求“openuri”,然后使用open方法检索站点的内容,或者使用其中一个HTTP库 一旦你拿到了文档,你所要做的就是使用Nokogori或Hpricot之类的东西来获得标题、文本的第一段和图像,你就完成了。我不知道有什么,但你自己写应该不会太难。在最简单的情况下,您可以只要求“openuri”,然

如何在Ruby中使用方法名重载运算符?

假设我有一个名为Foo的类: Class Foo def method=(params) puts params end def +(params) puts params end def method+(params) puts params end end 在上面,将类初始化为一个新对象后,我将调用myobj(myobj=Foo.new),调用myobj.method=“string”和myobj+“string”都将打印该字符串。然而,当我

Ruby 如何处理树顶左递归

我有一个新的通用编程语言,我正试图建立。我正试图使语言变得健壮和自然(它深受Ruby等的启发),在这样做的过程中,我引入了一些左递归规则 我看到一些示例似乎表明了以下左递归规则: rule l_recurse l_recurse / 'something else' end 可以将其更改为非左递归: rule r_recurse 'something else' / r_recurse end 在我看来,这似乎会有一个不同的问题,仍然会失败。我说的对吗,还是这“就行了” 我试图(找到

Ruby:ARGV打断重音字符

>“简历” test.rb Résumé>“R\xE9sum\xE9” 为什么会发生这种情况,我如何让ARGV返回“简历” 我已经设置了chcp 65001,正在使用ruby 1.9.2p290(2011-07-09)[i386-mingw32] 编辑在irc上询问之后,我被指示执行chcp 1252>NUL,这解决了问题。由于某些原因,Windows在控制台中不使用UTF-8。所以,尽管Ruby需要UTF-8编码的字符串,但它得到的是Windows-1252编码的字符串 因此,您有几种可能性(

Ruby os安装rmagick gem错误

我升级到Lion,现在在将rmagick gem作为捆绑包的一部分安装时发现一个错误: "gcc-4.2 -o conftest -I/Users/home/.rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/x86_64-darwin10.8.0 -I/Users/home/.rvm/rubies/ruby-1.9.3-p0/include/ruby-1.9.1/ruby/backward -I/Users/home/.rvm/rubies/ruby-1.

Ruby 使用warble将Rails 3应用程序部署到Tomcat

我使用warble成功创建了我的war文件。我正在尝试在tomcat中部署Rails 3应用程序 我使用的是Ruby 1.9.2,jRuby 1.6.7支持它 我正在使用windows并将环境变量JRUBY_OPTS设置为--1.9 如果我转到控制台(cmd)并键入jruby-v,这就是答案:jruby 1.6.7(ruby-1.9.2-p312) 部署后,当我执行应用程序时,由于语法问题,它会失败。通过分析日志文件,我可以看到以下内容: 系统 jruby 1.6.7(ruby-1.8.7-p3

如何在ruby中使用file.open打开存储在变量中的文件?

我想打开文件并从控制台读取它。 像 但在控制台上获得如下错误: test.rb:7:in `initialize': Invalid argument - myfile (Errno::EINVAL) from test.rb:7:in `open' from test.rb:7 是否可以从控制台读取文件名为的文件,并在ruby中执行do | file |…end。摆脱它 filename = gets().chomp filename = gets().ch

Ruby sqlite3和x2B的问题;OS X Mountain Lion上的Rails问题

如何修复此问题?我会确保您安装了OSX开发工具(带有gcc的XCode等)。如果您确信自己拥有这些工具,那么下一步将是遵循前面链接的问题(安装ruby-devel和sqlite3-devel)。看起来与 Master:demo shaunstanislaus$ rails server Could not find gem 'sqlite3 (>= 0) ruby' in the gems available on this machine. Run `bundle install` to

如何在ruby中使用函数to?

今天我用ruby编程真的很难。我遇到了这个问题,我真的被难住了 打印一系列数字对“x,y”,使x的范围从0到3,y的范围从5到7* 我已经提交了我的答案,但我不确定我是否答对了。为了理解,我想现在回答我的问题 简单的事情,比如 p [*0..3].product([*5..7]) 您是在问是否得到了正确的答案,还是在问堆栈溢出是否需要再次编写代码?请发布您的代码!这是正确的。谢谢你的帮助。 0.upto 3 do |x| 5.upto 7 {|y| puts x, y} end

Ruby 为什么Rails应用程序运行垃圾收集器?

我非常确定,所有应用服务器(我有一些使用和的经验)在创建时都是为每个工作人员创建单个进程,并且其状态为“冻结” 每当AppServer接收到处理请求时,它都会从主进程派生,并且对派生进程的所有进一步更改都会与原始进程分离。它们受益于写时拷贝优化,并且可以安全地被处理请求“破坏”。对环境的所有更改只影响将被抢占的单个进程 如果我对RoR应用程序堆栈的看法是正确的,那么应该几乎不需要垃圾收集,除非服务单个请求需要大量时间和内存(通常情况并非如此) 另一方面,它的答案让我得出结论,我一定是完全错了 有

Can';t使用rvm安装Ruby on Mountain Lion

已尝试使用rvm安装Ruby on Mountain Lion,但收到以下错误消息: ruby-1.9.3-p362 - #extracted to /usr/local/rvm/src/ruby-1.9.3-p362 ruby-1.9.3-p362 - #configuring Error running 'env LDFLAGS=-L/opt/sm/pkg/active/lib CFLAGS=-I/opt/sm/pkg/active/include CPATH=/opt/sm/pkg/act

Ruby Hadoop环境变量

我试图在Mac上调试单节点Hadoop集群的一些问题。在所有的安装文档中,它表示要添加: export HADOOP_OPTS="-Djava.security.krb5.realm=OX.AC.UK -Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk" 要删除此错误,请执行以下操作: Unable to load realm info from SCDynamicStore 这是可行的,但似乎只对STDOUT有效。当我检查Hadoop日

在osx 10.8上安装ruby 2.0

大家好,我们一直在寻找一个完整的如何在osx 10.8上安装ruby 2.0的候选版本,但还没有找到。好的,但我们需要一个解释在新机器上启动和运行所需的所有步骤的程序,该程序无需xcode即可执行。如果您安装了rbenv(),您可以像这样安装2.0预览之一: rbenv install 2.0.0-preview2 rbenv install 2.0.0-rc2 编辑:我的ruby构建版本已过时。事实证明,您也可以像这样安装候选版本: rbenv install 2.0.0-preview2

Ruby UTF-8中的Rails中文区域设置无效字节序列

我正在用繁体中文本地化Rails3.2-Ruby1.9.3应用程序。 英语中的一切都很好,但在中文中,我发现UTF-8中的字节序列无效。 据我所知,Rails应该是开箱即用的中文(而不是拉丁语)本地化。我遗漏了什么吗 谢谢。您是否有stacktrace或更完整的错误显示给我们?您是否在文件开头添加了神奇的注释?还有,你有没有理由坚持使用Ruby 1.9.3?在Ruby 2.0中,您不需要担心这种事情。UTF-8开箱即用。在这里,我得到的所有错误消息(没有更多)错误都在第3行:4ms Action

Ruby 通过include添加类方法

我有一个Ruby类,我想在其中包含类和实例方法。按照所描述的模式,我目前正在使用以下内容: class SomeObject include SomeObject::Ability def self.some_builder_method(params) # use some_class_method ... end end module SomeObject::Ability module ClassMethods def some_class_me

从cli ruby脚本像mailto链接一样打开邮件客户端

我已经编写了一个ruby cli脚本,它接受CSV并基于所述CSV生成PDF报告。我对Ruby还相当陌生,所以虽然它可能不是最棒的代码,但我对自己所做的感到非常自豪 无论如何,我现在真正想做的是,把我的脚本邮件中的PDF作为附件。我确信有一个库可以理解SMTP并代表我发送此邮件,但我想修改电子邮件正文,并在发送前查看附件。因此,最简单的方法似乎是让脚本在我的系统默认邮件客户端中启动一封新邮件,提供收件人、主题和模板文本,并附加生成的文件,有点像网页中的mailto:链接(mailto支持附件吗?

内部舍入问题:计算Ruby浮点数的精确方法?

这当然是不正确的: (0.1 + 0.1 + 0.1) => 0.30000000000000004 (0.1 + 0.1 + 0.1) == 0.3 # false 我不需要一个完美的和,只需要说两个浮点数是相同的值。我能想出的最好办法是将方程的两边相乘,然后取整。这是最好的方式吗 ((0.1 + 0.1 + 0.1) * 1000).round == (0.3 * 1000).round 更新:我坚持使用Ruby v1.8.7。舍入方法支持指定要舍入的小数位数: 所以 。。。

Ruby 为什么在rake中默认禁用警告?

我惊讶地发现,rake中的警告显然是默认禁用的: def broken_code path = '/tmp/foo' # create empty file File.open(path, 'w') # when warnings are enabled you get a warning here- File#new does not take a block File.new(path) do |f| puts "never get

Ruby Rails 3.2语言环境,URL中有文件夹名称路径

我有三个Ruby/Rails小程序在以下设置下运行: services.mydomain.com/applet1 services.mydomain.com/applet2 services.mydomain.com/applet3 这些服务通过Phusion乘客提供,App1和App2完全按照预期工作 问题在于App3使用嵌入在URL中的I18n语言环境: services.mydomain.com/applet3/en/ services.mydomain.com/applet3/fr/

Ruby 无效电子邮件的API查找失败,原因是<;签名

我在一个CSV文件中有大约100000个电子邮件地址。每一个都与一个成员ID相关联 我有一个API调用,允许我通过电子邮件查找成员ID,但它不允许我通过格式不正确的电子邮件进行查找。为了解决这个问题,我尝试跳过特定错误:当发送格式不正确的电子邮件时,API返回400错误,因此这是我的代码: url = HTTParty.get("#{base_uri}#{call}", :basic_auth => auth, :headers => {'Accept' => 'app

ruby如何在一条语句中进行分组、排序和选择

如何从中获取字符串数组,[“一”、“二”、“三”]。如果arr中的每一项都被视为一行,那么我想要的是一种简单的ruby方式来实现以下sql语句的功能: arr = [{name: 'one'}, {name: 'two'}, {name: 'one'}, {name: 'three'}] 这是我目前在Rails中的做法,但我认为这太多了 select name from test group by name order by count(*) desc 如果要从该数组中获得排序,可以编写如下

Ruby正则表达式与它应该的不匹配

我有以下正则表达式: regex=/\$([a-zA-Z.]+)/ 和下面的查询 query=“显示$AAPL、$TSLA的市盈率” 现在regex.match(query)应该捕获AAPL和TSLA,但是我得到了以下结果: # 这是完全错误的。有人知道为什么吗 请注意,此正则表达式在Rubular上运行良好:修复了它,需要在Ruby中使用.scan而不是.match,.match方法将只返回第一次捕获。您需要它返回所有捕获的匹配项,如PCRE中的/g标志 你可以使用这个方法。scan方法将为您

Ruby 将长空格减少为单个字符

我正在使用ruby,我正在尝试将一个长的空格减少为一个字符。这是我正在尝试的代码: str = hello world how are you puts str.gsub(/\s/, '#') 我当前代码的输出: hello#world####how#####are##you 期望输出: hello#world#how#are#you 知道如何达到我想要的输出吗?试试: puts str.gsub(/\s+/, '#') 尝试: 您很接近,缺少多个空格的正则表达式匹配。

使用Ruby正则表达式在字符后跟数字处拆分行

我想在冒号后面拆分一行,冒号后面是一个数字,位于行首: 123:[1,2,3].inject(:+) should split to ["123", "[1,2,3].inject(:+)"] 此正则表达式将在以下情况下工作: (?<=^\d|^\d\d|^\d\d\d): 它将以逗号、数字和冒号分开。您可以使用ruby 2.0的\K功能从匹配结果中删除左侧匹配的部分: \d+\K: 但是,因为它应该只使用一个数字,所以您可以简单地这样做(您不需要检查之前是否有多个数字): (?^\

Ruby-SOAP使用SavonV.2,嵌套参数

我需要向webservice发送一个特定的“xsi”类型整数,当“anyType”是专门的xsi类型时,它需要嵌套在“Argumetns”下,然后嵌套在子“anyType”下 现在这是我的代码: :Arguments => {"AnyType" => {:"@xsi:type" => "xsd:int"}} 在“AnyType”中,我想要数字30,我应该把它放在哪里以实现以下XML Savonrb用于将哈希转换为xml 您需要尝试以下操作: :Arguments =>

Ruby 如何打印类的每个实例的实例变量值?

我希望打印出FamilyMember类的每个实例的名称和状态变量。我已经创建了实例并将它们添加到数组中。当我尝试使用.each方法在数组中循环时,不会重新指定名称和状态变量。任何帮助都将不胜感激 class FamilyMember attr_reader :name, :age, :sex, :status, :country def initialize (name, age, sex, status, country) @name = name @age =

Ruby 找到分号时在txt文件中插入新行

我有一个txt文件,来自一封类似以下邮件的抄送:jhon@example;phil@exampl1.com;hon@example;phil@exampl1.com;hon@example;phil@exampl1.com File.open("emails.txt").readlines.each do |line| puts line; end 在我的代码中,我可以读取一行并输出它,但我不知道如何找到分号并换行,这样我就可以得到如下文本: jhon@example; jhon@exam

Ruby 未初始化的常量Mongo::Connection

我使用ubuntu机器上的rails 4.1.8以及ruby 2.1.2p95和mongo-2.0.4gem从rails中的某个控制器(X)连接到mongo db v3.0.3。正如许多人建议的那样,我已经尝试了下面给出的两种代码组合。但在这两种情况下,我都得到了类似的错误: require 'mongo' include Mongo def mongocon @db = Mongo::Connection.new("192.168.56.102", 27017).db("con

Ruby 未定义的常量ParseConfig

实际上,我正在试验ruby lint和ruboto来改进我的代码。鲁比·林特说: get.rb:错误:第89行第14列:未定义的常量ParseConfig 在那个地方我有标记代码: require 'parseconfig' module PublicanCreatorsGet def self.config home = Dir.home config = ParseConfig.new("#{home}/.publicancreators.cfg") <-------

Ruby Arc的动态组件属性';素描

我的画中有一个三点弧。标准中提供的动态属性与矩形相同。有没有办法将这3个点定义为属性,以便以后能够动态更改它们?您可以使用附加到每个实体和模型的属性来存储自定义属性 dictname = "TestDictionary" key = "arcs" value = ["x", "y", "z"] model = Sketchup.active_model model.set_attribute dictname, key, value dict = model.attribute_diction

RubyMonk';我们的计算方法是什么?

我现在正在学习RubyonRubyMonk,正在努力学习下面的代码:calculatemethod->def calculate(*arguments)。你能给我解释一下每一行代码吗?我想我知道每行代码的语法,但是逻辑对我来说没有任何意义 def add(*numbers) numbers.inject(0) { |sum, number| sum + number } end def subtract(*numbers) sum = numbers.shift numbe

Ruby 如何在Rails之外的多个环境中使用ActiveRecord?

我已经为单个环境创建了一个没有rails的DB连接,它运行良好。但希望为多个环境(例如开发、生产、测试等)创建DB配置 单个环境数据库连接代码(工作正常): 需要“mysql2” 需要“活动记录” #使用ActiveRecord ActiveRecord::Base.build\u连接( :adapter=>'mysql2', :database=>dev_db', :username=>“root”, :password=>'root' ) 类计划

安装ruby并与capistrano一起使用bundler

也就是说,我想用capistrano安装ruby(和rvm),通过bundler安装一些gems,并使用它们执行一些任务。这可能吗?当我尝试用rvm1-capistrano3gem安装gems时,它失败了: Installing light_resizer (0.2.0) ERROR: While executing gem ... (TypeError) no implicit conversion of nil into String 如果我在上面提到的gem旁边使用capist

Ruby 我可以在Puppet资源名称中使用变量和连接吗?

我想知道是否可以在资源名称中添加变量,例如: $c6release = $::operatingsystemmajrelease ## [EPEL(5, 6, or 7)-x86_64] yumrepo { 'EPEL' + $c6release + '-x86_64': ## This is the part I'm asking about. baseurl => "http://repo.centos.com/cobbler/repo_mirror/EPEL" +

在Docker上运行Ruby脚本

我正在尝试运行一个Ruby脚本,它使用Docker上的Selenium。我猜这是因为我还需要以某种方式安装Firefox,尽管我认为这是包含在Selenium gem中的。由于“它在我的机器上工作”,我有点不知道如何使它在Docker实例上工作 我的Dockerfile看起来像这样 FROM ruby:2.3-onbuild COPY Gemfile Gemfile COPY Gemfile.lock Gemfile.lock COPY . . RUN bundle install ENT

Ruby函数未定义的局部变量或方法

输出:main.rb:4:in':未定义的局部变量或方法hey',用于main:Object(namererror) 错误在哪里?您正在将变量hey作为参数传递给方法wri()。您可能需要字符串'hey' def wri(var) puts var end wri(hey) 好。。错误消息几乎告诉了您一切hey是一个变量,而不是您可能想要的字符串。使用wri(“hey”)。这只是一个友好的提示,没有必要在答案中包含irb提示,事实上这会使代码更难阅读。所以最好在将来避免。无论如何,这个答案是正

实数上的ruby-force整数除法

在ruby中,如何强制实数进行整数除法 # integer division with integers - no problem >> [ 7/2 , 7%2 ] => [3, 1] # integer division with floats - '%' gives the remainder just fine... # ...but for the quotient it used real division >> [ 7.0/2 , 7.0%2 ] =&

自制的Ruby版本没有';与计算机版本不匹配

我不想管理多个版本的Ruby,尽管我认为这就是我所拥有的 当我运行ruby-v时,它会显示ruby 2.3.0p0(2015-12-25修订版53290)[x86\u 64-darwin15] 但是,当我运行brew upgrade ruby时,它说ruby不存在。然后我安装了ruby,它安装了2.4.0版。当我运行ruby-v时,它仍然会说同样的话 如何在我的计算机上安装最新版本的Ruby 我有一个苹果 因为您的路径链接到您的原始ruby,所以您应该像下面这样将您的自制ruby路径添加到.ba

如何在Ruby中的扩展模块中使用类实例变量?

我想创建一个DSL,它存储各种块,然后可以调用它们。我希望这是一个可重用的模块,可以包含在多个类中 我找到了一种使用类变量的方法,但是rubocop抱怨说我应该使用类实例变量。不过,我想不出一个办法。可能吗 module MyModule def self.included(base) base.extend(ClassMethods) end def run_fixers ClassMethods.class_variable_get(:@@fixers).eac

Ruby 列出条带帐户的支出

据 我需要检索目的地的所有支出,因此我提出了以下请求: def all_payouts(external_account) return Stripe::Payout.list( :destination => external_account ) end 我试图从API发送外部帐户(如“ba_XXXX”),但它不断返回 没有这样的外部帐户:ba_XXXX在使用Postman进行测试时,我检查了外部帐户,但它存在于条带上 有什么帮助吗?因为这是一个很常见的问题,很

为什么ruby-v在成功安装ruby 2.5.3之后仍然显示版本2.0.0?

我将遵循本教程: 我已经成功地安装了ruby 2.5.3,但是,当我在终端的命令行上运行“ruby-v”时,它仍然显示ruby 2.0.0 我的朋友告诉我一些关于ruby的本地和通用安装以及如何产生冲突的事情,但是我对这一点完全陌生,所以我很难理解如何将2.0.0更新到2.5.3(我已经成功地在我的机器上安装了) 我建议您安装RVM: 安装说明在现场 安装完RVM后,请执行以下操作 rvm安装2.5.3 然后使用ruby-v进行测试,以检查您是否拥有所需的版本(2.5.3)。如果没有,我们可以从

Ruby 将命令(';stdout';)强制为整数以进行数学比较

给定在路径/tmp/foo处部署到我的服务器的检查器脚本,该脚本包含以下内容 #/bin/bash a=`cat/tmp/a` b=`cat/tmp/b` echo-n$(expr$a-$b) …我进行了InSpec测试,以评估a和b之间的差异是否在可接受范围内 descripe命令('/tmp/foo')do 它的('stdout'){应该是>=0} 它的('stdout'){应该是=0} 它的('stdout'){应该cmp=5} 结束 InSpec使用,它将点解释为方法调用。归功于@a

使用ruby和mkvextract自动提取字幕

不久前,我设法用ruby编写了一个脚本,可以查看文件夹并从其中包含的所有.mkv文件中提取字幕 然而,自从我的电脑崩溃后,我不得不重新安装ruby,现在我又试了一次,它似乎对我不起作用,不确定我是否有一个旧版本的脚本或什么 这是密码 path = ARGV[0] Dir.chdir(path) filename = "#{path}#{Dir.glob("*.mkv").first(1)[0]}" puts filename Dir.glob("#{path}*.mkv"). each do

连接到nil应该在Ruby中返回nil

我需要生成一个由括号包围的字符串,但前提是它的值不是空的。目前我正在使用类似于: [5] pry(main)> a = nil => nil [6] pry(main)> a.nil? ? '' : "(#{a})" => "" [7] pry(main)> a = "world" => "world" [8] pry(main)> a.nil? ? '' : "(