小编AKW*_*KWF的帖子

如何让Delayed_Job任务因"执行过期"而失败

我认为,因为它是一个后台进程,所以不会有任何超时.我使用delayed_job在后台运行报告.非常大,长时间运行的报告因此消息而失败.

我正在使用Phusion Passenger在Apache2上运行Rails 2.3.5.

ruby-on-rails delayed-job

6
推荐指数
1
解决办法
5080
查看次数

TypeError(rescue子句所需的类或模块)

根据Ryan Bates在这里发现的RailsCast情节,我一直在使用Stripe超过一年.但是,我的错误处理最近停止了工作,我以前从未见过这个错误.我最近开始在Ruby 2.1上运行我的应用程序,尽管我可以说,这就是问题所在.

这是我Subscription模型中的实例方法:

    begin
      save_with_stripe_payment
    rescue Stripe::InvalidRequestError => e
      logger.error "Stripe error while creating customer: #{e.message}"
      logger.error e.backtrace.join("\n")
      errors.add :base, "There was a problem with your card."
      false
    rescue e
      logger.error e.message
      logger.error e.backtrace.join("\n")
      errors.add :base, e.message
      false
    end
Run Code Online (Sandbox Code Playgroud)

这条线:

    rescue Stripe::InvalidRequestError => e
Run Code Online (Sandbox Code Playgroud)

是抛出错误的人.从那里开始的堆栈跟踪转到"开始"行,就是这样.我在这里错过了什么?

ruby ruby-2.1

6
推荐指数
2
解决办法
4939
查看次数

如何使用Nokogiri :: XML :: Builder生成动态标签?

我循环遍历数组中的一组标记名称,我想使用构建器打印每个标记名称,而不依赖于"<<"方法的手动XML.

我以为:

builder = Nokogiri::XML::Builder.new do |xml|

  for tag in tags
    xml.tag! tag, someval
  end
end
Run Code Online (Sandbox Code Playgroud)

会这样做,但它只是创建名为"tag"的标签,并将标签变量作为元素的文本值.

有人可以帮忙吗?这似乎应该相对简单,我在搜索引擎上找到答案时遇到了麻烦.我可能不会以正确的方式提出这个问题.

ruby nokogiri

5
推荐指数
2
解决办法
3123
查看次数

JasperReports是否支持交替的天沟边缘?

许多生成PDF的人都需要绑定它们.良好的绑定要求每个其他页面在其左侧和右侧支持备用边距大小.我知道JasperReports在其3.x系列中并不支持这一点.这是否支持4.x系列?

jasper-reports

5
推荐指数
1
解决办法
830
查看次数

没有这样的文件加载 - RMagick2.so

我真的很难理解下面错误的含义.我在OS X Lion上开发,我在那里安装了RMagick,我的代码完美无瑕.

然而在生产RedHat机器上,如下:

MissingSourceFile (no such file to load -- RMagick2.so):
  rmagick (2.13.1) [v] lib/RMagick.rb:11
Run Code Online (Sandbox Code Playgroud)

是的,我在本地将rmagick gem安装到两台机器上.我已经将每台机器上的宝石解压缩到供应商/宝石.

对我来说最有趣的可能是这个错误是如此愚蠢.我的Mac上也没有RMagick.so文件,但代码有效.

这里有什么问题?

ruby-on-rails rmagick

5
推荐指数
1
解决办法
4475
查看次数

如何在Rails 3.1中使用验证来强制复合唯一性?

我有一个属于Brand的客户模型.客户只有名称和标识符(字符串)作为属性.我想仅在特定品牌中强制执行名称和标识符的唯一性.如何强制执行该范围的唯一性?

activerecord ruby-on-rails-3

5
推荐指数
1
解决办法
1083
查看次数

响应Ajax请求后如何清除Rails闪存对象?

我正在为某些控制器操作执行此类操作:

def my_method

  flash[:notice] = "Success."

  respond_to do |format|
    format.js { render 'common/flashes' }
  end

end
Run Code Online (Sandbox Code Playgroud)

而且效果很好,并且闪光警报和通知显示得很好。但是,当用户单击以转到另一页时,该Flash消息将再次显示。由于我处理它们的方式,Rails显然不知道使用了它们。完成上面的渲染后,如何清除它们?

ruby-on-rails rails-flash ruby-on-rails-3 ruby-on-rails-3.2

5
推荐指数
4
解决办法
4176
查看次数

在测试时,每次调整Rails 3.2中的Javascript文件时,是否必须预编译资产?

我正在尝试学习TDD和BDD并以正确的方式做到这一点.我正在使用的堆栈(或试图使用,Spork不能与Guard一起使用)是Minitest-Guard-Spork-Capybara.我专注于单元测试的模型和规格的集成测试.

我在这个应用程序中有很多Ajax.我只是save_and_open_page在我的一个测试中做了一个,当然页面当然很难看,因为它找不到任何资产.

我的问题是,如果我要测试JS功能,我是否必须每次都预编译资产以测试它们,或者是否有某种方法可以将管道默认设置为开发模式以进行测试.

我确定这是一个n00b问题,但这就是我测试的地方.努力做正确的事.

ruby ruby-on-rails minitest asset-pipeline ruby-on-rails-3.2

5
推荐指数
1
解决办法
2317
查看次数

如何检测JS中外部窗口的关闭?

我有一段代码打开一个窗口:

  $("#authorization_link").click(function() {
    win = window.open($(this).attr("href"),'width=800,height=600');
  });
Run Code Online (Sandbox Code Playgroud)

现在我想在窗口"win"关闭时运行另一个块.什么是事件以及如何在检测时运行代码?

javascript jquery coffeescript

5
推荐指数
1
解决办法
918
查看次数

自动完成方法拒绝在RSpec测试中触发

我正在第4天尝试autocomplete在RSpec测试中开火.在浏览器中超级工作,它非常难以在我的请求规范中运行.


更新:看起来我的RSpec/Capy脚本是针对dev db而不是test db运行的.我使用的是战俘,所以我不知道如何设置default_url_options[:host]Capybara.app_hostCapybara.server_port到.我有一种感觉,如果我解决这个问题,它可能有用.


堆栈是:

  • Rails 3.2.16
  • 水豚
  • RSpec的
  • 鬼驱人/ PhantomJS
  • 战俘
  • 宙斯
  • 工厂女工

点击链接,点击按钮,fill_in字段都很棒.但是,当需要让这个自动完成工作时,它绝对拒绝工作.

我正在使用这种方法:

def fill_autocomplete(field, options = {})
  fill_in field, with: options[:with]
  page.execute_script %Q{ $("##{field}").trigger('focus') }
  page.execute_script %Q{ $("##{field}").trigger('keydown') }
  selector = %Q{ul.ui-autocomplete li.ui-menu-item a:contains("#{options[:select]}")}
  Capybara::Screenshot.screenshot_and_open_image
  page.should have_selector('ul.ui-autocomplete li.ui-menu-item a')
  page.execute_script %Q{ $("#{selector}").trigger('mouseenter').click() }
end
Run Code Online (Sandbox Code Playgroud)

我在这里找到.这screenshot条线是我自己的.但是上面的一行:

  page.should have_selector('ul.ui-autocomplete li.ui-menu-item a')
Run Code Online (Sandbox Code Playgroud)

回报false.它就像浏览器中的魅力一样.我不能为我的生活弄清楚为什么它不起作用.我已经尝试过我所知道的一切.我该怎么调试呢?

屏幕截图只显示了我期待的页面,并且字段填写正确.我甚至用插入autocomplete呼叫的"你好"警报对此进行了测试.在浏览器中完美运行,但在测试中根本没有结果.

简而言之,看起来以下两行没有效果:

  page.execute_script %Q{ $("##{field}").trigger('focus') }
  page.execute_script %Q{ …
Run Code Online (Sandbox Code Playgroud)

rspec capybara ruby-on-rails-3 poltergeist

5
推荐指数
1
解决办法
726
查看次数