草庐IT

clnt_call

全部标签

ruby - @app.call(env) 到底做了什么?

我真的很喜欢了解这些东西在引擎盖下是如何工作的,尤其是在技术方面。目前,我正在更深入地研究ruby​​,并尝试仅将它与rack一起使用,以了解基于rack的框架的工作原理。此刻,Rack中间件让我抓狂。为什么?尽管中间件非常简单,但我对@app.call(env)还是有些困惑。为了清楚起见,请考虑以下代码:classMyCustomMiddlewaredefinitialize(app)@app=appenddefcall(env)@app.call(env)ifenv['REQUEST_METHOD']!='POST'body=env['rack.input'].clonebody=

ruby-on-rails - Rails 错误 : "Undefined method ` call' for "result == false":String"error in create method

当我尝试在我的应用程序中使用图像创建列表时,会抛出此错误:undefinedmethod`call'for"result==false":String.这个错误发生在我安装devisegem之后。但是设计不应该与创建新列表有任何关系吗?该应用的其他部分工作正常,我可以创建没有图像的新列表。错误信息NoMethodErrorinArtistsController#createundefinedmethod`call'for"result==false":String它指向的方法是第164行的ActiveSupport中的回调方法https://sourcegraph.com/github

ruby-on-rails - Rails 和类变量 : will this persist across users and server calls?

我们在Rails3.0.6上。在Rails中,以下代码会在页面加载和用户之间持续存在吗?还是每个请求都会重新定义它?代码位于Controller的顶部。@@list=[]hero={}hero['name']='so'hero['superpowers']=['coding','qa','spec_writing']@@list.pushherohero2={}hero2['name']='so2'hero2['superpowers']=['coding']@@list.pushhero2...moreHashespushedinto@@list该列表每月仅更改一次,我们希望高效快速

ruby - 'yield called out of block' 在 Ruby 中是什么意思?

我是Ruby的新手,我正在尝试以下操作:mySet=numOfCuts.times.map{rand(seqLength)}但我得到了“yieldcalledoutofblock”错误。我不确定他的意思。顺便说一句,这个问题是我问的一个更普遍的问题的一部分here. 最佳答案 问题是times方法期望得到一个block,它将控制权交给它。但是你还没有给它传递一个block。有两种方法可以解决这个问题。首先是不要使用时间:mySet=(1..numOfCuts).map{rand(seqLength)}或者传递一个block给它:my

ruby-on-rails - Rspec NoMethodError : undefined method `call' , 但一切都通过 rails 控制台工作

我是一个正在努力学习的rails/rspec新手。我设置了以下数据模型(摘录)t.string:foot.string:bart.date:future_date我有一个Web表单来创建这些与用户关联的条目,类似于此railstutorial中的微博.Web表单如下所示(摘录):带有启动帖子的“创建”按钮。通过railsconsole似乎一切正常;Web表单显示正确,条目创建正确,数据库正确填充。但是,当我运行rspec时,我得到了NoMethodError:undefinedmethod`call'for#这是相关的请求规范(摘录):it"shouldnotcreateafoobar

ruby 事件机器 + AMQP : Ensuring specific async calls happen before raising exceptions

我们正在用Ruby构建一个支持AMQP的消息传递系统。但是,我们在错误处理方面遇到了问题。我们维护一个异常白名单,这是安全的,并且RabbitMQ中的消息可以不被确认并由另一个工作人员重试。然而,对于未知或不可预见的错误,我们假设无论工作人员尝试消息多少次,同样的失败总是会发生。这意味着,当出现未知错误时,我们需要捕获它,将其记录在某个地方(目前是MySQL),然后向RabbitMQ发送一个ACK调用以从队列中删除消息。目前一切都是使用amqpgem构建的,它是用EventMachine触发的。这会导致问题,因为调用#ack方法,并不意味着ACK由于gem的异步行为已发送到Rabbit

ruby-on-rails - ruby rails : Why does calling a partial in my views take an extended time to render?

例如,我在我的recipes/_cuisines.html.erb文件中调用了三个部分:该文件中没有其他内容。部分只是没有集合的静态内容。这是我从日志中得到的:Renderedrecipes/cuisines/_denmark.html.erb(4.6ms)[cachemiss]Renderedrecipes/cuisines/_spain.html.erb(2.3ms)[cachemiss]Renderedrecipes/cuisines/_italy.html.erb(5.3ms)[cachemiss]Renderedrecipes/_cuisines.html.erb(161.5

ruby - pik 错误 : private method `gsub' called for nil:NilClass

将JRuby1.3.1添加到pik时出现错误。错误:Error:privatemethod`gsub'calledfornil:NilClass这是我的路径环境变量:C:\Users\Owner>echo%path%C:\ProgramFiles\Java\jdk1.7.0_05\bin;c:\jruby-1.7.0.preview1\bin;C:\jruby-1.3.1\bin;c:\pik这是在尝试添加1.3.1版本时:C:\Users\Owner>pikaddC:\jruby-1.3.1\binTherewasanerror.Error:privatemethod`gsub'ca

ruby-on-rails - 神秘的 Ruby block 行为 : &block vs. {block.call}

在编写可以从其他帮助程序和View中使用的用于打印javascript的帮助程序时,我偶然发现了以下问题:defjavascript(print_tag=false,&block)content_for(:javascript)doifprint_tagjavascript_tag(&block)#doesnotworkjavascript_tag{block.call}#doesworkelsecapture(&block)endendend这个助手应该用javascript{"alert('hurray');}调用.在第一个备选方案中——我希望它能工作——Railsjavascri

ruby-on-rails - ruby /rails : how can I create multiple records in salesforce with one API call via the rforce gem?

我正在使用rforcegem在我的salesforce数据库中创建记录。rforce文档中创建记录的例子是:opportunity=[:type,'Opportunity',:accountId,account_id,:amount,'10.00',:name,'FakeyMcFakerson',:closeDate,'2008-07-04',:stageName,'ClosedWon']binding.create:sObject=>opportunitySalesforceAPI调用create()允许一次创建多个对象,但我正在努力实现这一点。我尝试了以下调用:binding.cr