草庐IT

Openstack平台命令操作和创建

全部标签

ruby-on-rails - 在 Rails 控制台启动时运行命令

有没有办法在Rails控制台启动时运行特定命令?我希望它能以大写字母打印出我是连接到远程数据库还是本地数据库!我不介意编写自定义方法来确定-我只是问如何写入控制台。我以前在那里看到过错误和警报。例如:railsc打印出Loadingdevelopmentenvironment(Rails3.2.11)**使用远程数据库**1.9.3p125:001> 最佳答案 您可以在irb配置文件中编写ruby代码。编辑.irbrc文件并添加用于确定您是连接到本地还是远程的ruby​​代码ifdefined?Rails//rubycodetofi

c - 命令行错误消息的 "POSIX-defined format"是什么?哪个标准?

在ruby​​-doc.org上page我发现了以下关于命令行选项/参数解析(getopt库)的内容:ReturntheappropriateerrormessageinPOSIX-definedformat.Ifnoerrorhasoccurred,returnsnil.命令行错误消息的POSIX定义格式是什么?它是哪个POSIX标准?编辑:我必须澄清一下,我对标准/推荐的错误消息很感兴趣解析命令行参数/选项。在下面的链接(答案)中,我发现只提到了getopt的这种错误格式:"%s:illegaloption--%c\n",,"%s:optionrequiresanargument-

ruby - 如何使用 aws ruby​​ SDK 为 AWS Lambda 创建 CloudWatch 日志触发器?

我知道应该有一种方法可以使用awsruby​​sdk为AWSLambda创建触发器(就像可以使用AWS管理控制台一样)。*更新,我找到了创建触发器的方法。我正在使用以下代码来执行此操作:@cloudwatchlogs=Aws::CloudWatchLogs::Client.new(region:region,credentials:Aws::Credentials.new(aws_access_key_id,aws_secret_access_key))@cloudwatchlogs.put_subscription_filter({log_group_name:"RDSOSMetri

ruby-on-rails - 创建许多新对象时内存膨胀

当我运行它然后在OSX事件监视器中观察我的ruby​​进程的内存消耗时,内存以大约3MB/s的速度增加。如果我删除事务,内存消耗量将减半,但内存占用量仍会继续增加。我的生产应用程序有一个问题,Heroku由于内存消耗而终止了进程。有没有一种方法可以在不增加内存的情况下执行以下操作?如果我注释掉.save行,那没关系,但这当然不是解决方案。ActiveRecord::Base.transactiondo10000000.timesdo|time|puts"----#{time}----"a=Activity.new(:name=>"#{time}Activity")a.save!(:va

ruby-on-rails - Ruby on Rails : get route using controller, 操作和参数

我对RoR很陌生,我正在寻找一种方法来为给定的Controller、操作和参数获取路由。类似于url_for()但没有域和协议(protocol)。假设我有:params={"controller"=>"controller","action"=>"edit","project_id"=>"1"}我需要得到:route="/controller/edit/1"如果我不需要手动构建路由并且不需要拆分url_for()的结果,那将是最好的。RoR本身是否支持这样的功能?这可能是一个简单的问题,但我找不到答案。 最佳答案 您应该能够使用以

Ruby 命令行隐式条件检查

我从bashshell运行了以下命令:echo'helloworld'|ruby-ne'puts$_if/hello/'一开始以为是打错了,没想到竟然输出了helloworld我想输入:echo'helloworld'|ruby-ne'puts$_if/hello/===$_'谁能给出解释或指向文档,说明为什么我们得到与$_的这种隐式比较?我还要注意:echo'helloworld'|ruby-ne'puts$_if/test/'不会输出任何东西。 最佳答案 Ruby解析器在条件句中有一个正则表达式文字的特殊情况。通常(即不使用e、

ruby - 如何指定 gem 仅是 JRuby 平台?

我正在开发一个只适用于JRuby平台的gem。如何在我的.gemspec中指定它? 最佳答案 你可以简单地输入gemspecspec.platform='java'表示它仅适用于JRuby。具体设置平台可以看一下:RubygemSpecificationReference 关于ruby-如何指定gem仅是JRuby平台?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/189366

Ruby - 创建 gem : reload console with updated gem content

根据这个article,我们可以通过将这些行添加到我们的rakefile来测试我们的gem代码:​​task:consoledorequire'irb'require'irb/completion'require'my_gem'#Youknowwhattodo.ARGV.clearIRB.startend它工作得很好,只是每当对gem进行更改时,我都需要退出并重新运行rakeconsole以更新代码。作为创建/调试工具确实不方便...有没有一种方法可以编写一个自定义方法来充当Rails中很棒的reload!方法?bash脚本不会工作,因为第一个命令在Ruby控制台中,我宁愿有一个100

ruby 使用变量执行 bash 命令

我需要在Ruby脚本中执行Bash命令。根据"6WaystoRunShellCommandsinRuby"byNateMurray,大约有6种方法可以做到这一点以及其他一些谷歌搜索的来源。print"entermyid:"myID=getsmyID=myID.downcasemyID=myID.chompprint"enterhost:"host=getshost=host.downcasehost=host.chompprint"winexetohost:",host,"\n"command="winexe-Udomain\\\\",ID,"//",host,"\"cmd\""exe

ruby-on-rails - 从 rails 中的 url 获取 Controller 和操作信息

如果有相应的路由规则,我如何获取有关任何(不仅是当前)url的Controller和操作名称的信息?例如:function_i_need('/pages/5')返回{:controller=>'page',:action=>'show',:id=>5}UPD:已找到答案Railsparseurltohash(Routes) 最佳答案 你可以这样做:Rails.application.routes.recognize_path"/pages/5" 关于ruby-on-rails-从rail