Tag: ruby 2.1

Ruby on Rails:没有将Array隐式转换为String(DEVISE)

我最近从10.7升级到OSX Mavericks 10.9,从那时起它给我带来了很多麻烦。 我升级了Xcode,命令行工具,重新安装了自制软件和rvm,最后让rails工作(我花了5个小时让rmagick再次工作)。 但是,现在当我尝试从我的localhost访问我的应用程序时,我收到此错误 no implicit conversion of Array into String 这是rails日志: Started GET “/” for 127.0.0.1 at 2014-05-05 02:20:00 -0700 Processing by AccountsController#dashboard as HTML Completed 500 Internal Server Error in 0.3ms TypeError (no implicit conversion of Array into String): app/controllers/application_controller.rb:26:in `check_correct_subdomain’ Rendered /Users/kibaek/.rvm/gems/ruby-2.1.0@onvard/gems/actionpack-3.2.16/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.0ms) Rendered /Users/kibaek/.rvm/gems/ruby-2.1.0@onvard/gems/actionpack-3.2.16/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (0.8ms) Rendered /Users/kibaek/.rvm/gems/ruby-2.1.0@onvard/gems/actionpack-3.2.16/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (7.1ms) […]

如何获取调用别名方法的名称?

我有一个名为link_to_admin方法,然后我将另一个名为simple_link_to方法别名 def link_to_admin(name,url,options={}) # My stuff here link_to(name,url,options) end alias_method :simple_link_to, :link_to_admin 在这里我link_to_admin一个问题,如果我调用link_to_admin ,我想将值打印到 标签中 防爆。 def link_to_admin(name,url,options={}) # My stuff here menu = “” menu << " #{link_to(name,url,options)}” menu.html_safe end 如果我打电话给simple_link_to不需要 标签。 所以目前我正在传递一个像li_required这样的options然后在我的方法中检查条件。 这是完美的,我知道这是正确的方法。 def link_to_admin(name,url,options={}) menu = “” menu << options[:li_required] ? " #{link_to(name,url,options)}” : link_to(name,url,options) menu.html_safe end 但是,在我尝试找到像simple_method或link_to_admin类的调用方法simple_method ,我试过: 1.__method__ 2.caller[0]=~/`(.*?)’/ 这没有按预期工作。 […]

自动加载常量时检测到循环依赖(Rails 4,Ruby 2)

configs / routes.rb Shutters和Paints是Jobs子资源。 resources :jobs do resources :shutters resources :paints end app / models / job.rb Job包含许多Shutters和许多Paints 。 class Job lambda { |a| a[:no].blank? } accepts_nested_attributes_for :paints, allow_destroy: true, :reject_if => lambda { |a| a[:name].blank? }` app / models / shutter.rb Shutter包含属于一个Job和一个Paint 。 class Shutter < ActiveRecord::Base belongs_to :job belongs_to :paint app / models […]

Ruby 2.1与Ruby 2.0或1.9相比内存使用量增加

我最近在我的Heroku Web应用程序中部署了从2.0到2.1.5的Ruby升级,现在我一直在调整内存配额错误,而2.0和1.9这种情况从未发生过。 普通Heroku Dyno的限制为512MB,我使用Unicorn运行2个进程,并且在两个dynos上运行Sidekiq的一个线程。 在Ubuntu上读取Phusion Passenger内存消耗从1.9.3(系统)增加到2.1.2(RVM)后 ,我尝试将环境变量RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR设置为0.9以禁用分代垃圾收集器,它确实在一定程度上改善了内存消耗,但仍然留下我无处接近消耗的2.0或1.9。 由于现在的内存是我最关心的问题,我想看看我是否可以使用ruby 2.1.x修复此问题,而不是恢复到2.0。 以下是一些演示问题的图表: 在凌晨2点之前,我将Ruby 2.0.0-p598降级为Ruby 2.1.5,内存问题得到解决并保持在极限之下。 然后,我尝试升级到Ruby 2.1.5,但将环境变量RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR设置为0.9。 如您所见,内存使用情况略好于原始的2.1.5图表,但仍然违反了内存配额。 <img src="http://sofzh.miximages.com/ruby-on-rails/Ct9Gh.png" alt="使用 RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR 从2.0.0移动到2.1.5到0.9 Heroku”><img src="http://sofzh.miximages.com/ruby-on-rails/pCA5L.png" alt="使用 RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR 从2.0.0移动到2.1.5到0.9 New Relic”>

带有erubis模板引擎的Ruby 2.1

我们正在寻找用于渲染视图的最快模板引擎。 据我所知,erubis是ruby中最快的模板引擎。 我的用例是通过脚本渲染模板。 查看gem官方页面,它的最新版本是在2011年。不确定社区是否活跃。 https://rubygems.org/gems/erubis/versions 有没有人使用ruby 2.1与erubis模板引擎? 是否建议使用erubis和ruby 2.1? 谢谢Abhay

AWS Elastic Beanstalk – 如何将现有环境从Ruby 2.1升级到Ruby 2.2

AWS Elastic Beanstalk – 无法克隆最新平台或eb upgrade从Ruby 2.1 eb upgrade到Ruby 2.2 我一直在粉碎这个。 早在5月,AWS宣布他们的Ruby Elastic Environments现在提供Ruby-2.2(例如ruby-2.2-(passenger-standalone)或ruby-2.2-(puma) )。 我无法将现有的ruby-2.1环境升级到ruby-2.2。 看来我必须完全重建它们……这看起来很傻? 有没有其他人经历过这个? 我只是缺少一些简单的东西吗? 额外的信息 在我的舞台和制作环境中,我一直兴高采烈地使用ruby-2.1-(passenger-standalone)几个月。 现在我想将它们升级到最新的ruby-2.2平台。 AWS文档说这非常简单,实际上他们的一些文档甚至似乎表明你可以使用eb clone –update 。 我正在使用的EB CLI 3.4.5中不存在该标志:(此外,Web控制台具有Clone with Latest Platform选项菜单项,但它已被禁用。 看来,我所能做的就是到达最新的Ruby-2.2实例,就是从头开始创建一个全新的环境。 这非常令人讨厌。 所以这就是我尝试过的…… $ eb status Environment details for: staging Application name: xyz Region: us-west-2 Deployed Version: fbe7 Environment ID: someId Platform: 64bit […]