小编Zab*_*bba的帖子

如何让Rails添加行号/时间戳来记录消息?

tail -f在开发Rails应用程序时用来显示日志文件.它显示了日志消息(颜色!:),这很棒.

但是,如果在80宽度控制台中有如此多的信息,那么当我点击按钮获取资源时,很难跟踪某些"设置"日志消息的开始位置.

如果在每条日志消息/行的开头有行号或甚至是时间戳,则会更容易.这样我就记得我需要开始查看"行号2365"或"2010/10/10 23:33:23:45之后"的日志.

这可能吗?是否有一些Rails内部选项?

logging customization ruby-on-rails ruby-on-rails-3

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

Rails集成测试

我正在寻找为已经构建的Rails 3应用程序设置一堆集成测试.该应用程序使用Rails 3和Ruby 1.9.2构建.我已经看到了对Capybara,Cucumber和RSpec 2的推荐,但我不确定每种产品的优点是什么.

我也注意到他们似乎紧密地联系在一起.我见过的帖子似乎总是谈到使用黄瓜的水豚,或者使用黄瓜的Rspec.

每个人的优点/缺点是什么?是否有一些最佳组合?

integration-testing cucumber capybara rspec2 ruby-on-rails-3

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

如何旋转,覆盖或关闭Sunspot Solr Rubygem的日志记录?

我在使用Sunspot Solr搜索Ruby on Rails方面有很棒的经验,但是,它的日志文件正在变得非常大,我似乎无法找到一种方法来旋转,覆盖关闭这些日志(除了非常我宁愿不追求的hacky方法.

我在config /中有一个文件sunspot.yml,我尝试将log_level标志设置为SEVERE,但这没有任何效果.

我尝试使用标准的Logger.config旋转方法,但是,它只是将我的开发日志输出发送到新创建的文件.

我非常感谢您提供的任何建议.

logging solr ruby-on-rails sunspot

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

如何使用WHERE IN mysql存储过程

如何传递数组并在存储过程中使用WHERE IN?

我需要连接输入字符串或什么?

让我们说

DELIMITER $$
DROP PROCEDURE IF EXISTS `abc`.`table1`$$
CREATE PROCEDURE  `abc`.`test`
(IN somestring VARCHAR(255))
BEGIN
    SELECT * FROM abc.table1 
    WHERE flight_type IN somestring
END $$
DELIMITER ;
Run Code Online (Sandbox Code Playgroud)

mysql stored-procedures

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

如何剥离& 从一个字符串?

使用RoR 2.3.8

name 有价值 Tiffany & Co.

此代码在视图中:

@header_title = 'Related shops with ' + strip_tags(@shop.name)
Run Code Online (Sandbox Code Playgroud)

结果结果A:

#note that the & has NOT been stripped
Related shops with Tiffany & Co.
Run Code Online (Sandbox Code Playgroud)

此代码在视图中:

@header_title = strip_tags(@shop.name) + 'Related shops with '
Run Code Online (Sandbox Code Playgroud)

得到结果B:

#note that the & HAS been stripped
Tiffany & Co. Related shops with
Run Code Online (Sandbox Code Playgroud)

我其实想要Related shops with Tiffany & Co.(即转换&&)

我该怎么做呢?

为什么在第二次通话中,&被剥离,但在第一次通话中却不是这样?

ruby-on-rails

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

将DISTINCT与ActiveRecord一起使用

我正在使用ActiveRecord/RoR.

我的表看起来像这样:

id (int), start_time(time), end_time(time), ...

1, 20:00, 23:00

2, 20:00, 23:00

3, 16:00, 20:00

4, 16:00, 23:00

5, 20:00, 22:00

6, 16:00, 20:00
Run Code Online (Sandbox Code Playgroud)

我需要返回具有distinct start_time+ end_timecombination组合的记录.

sql activerecord ruby-on-rails

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

如何在Rails中启用Ruby警告?

我是这样做的test.rb:

def some_method
  p "First definition"
end

def some_method
  p "Second definition"
end

some_method
Run Code Online (Sandbox Code Playgroud)

当我打电话时ruby test.rb,打印Second definition(预期)

当我打电话时ruby -w test.rb,它打印Second definition(预期)打印警告test.rb:5: warning: method redefined; discarding old some_method

有没有办法在Rails中启用这些警告?(并将警告打印到控制台/日志文件)

为什么我要启用警告:例如,如果我无意中在控制器中重新定义了一个方法,那么我会通过查看打印到控制台/日志文件的警告来了解该问题.请看这里的例子.

ruby warnings ruby-on-rails

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

如何将矢量值与R中颜色渐变的颜色相匹配?

这在R中可能是一件微不足道的事情,但我找不到任何内置函数来做到这一点:

在给定颜色渐变的情况下,如何将值向量(比如数值)转换为颜色向量.

r transform vector

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

Rails如何知道何时从`sessions`表中删除记录?

Rails如何知道何时从会话表中删除记录?

例如,如果用户访问网站,则会创建会话记录,但是当用户关闭浏览器窗口时,服务器不会收到任何通知,那么Rails如何从会话表中删除记录?

session ruby-on-rails-3

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

Rails和minitest/spec中的NoMethodError <fixture name>

没有minitest/spec,测试看起来像这样,并且my_engine_customers装载了装置(一切都很好):

my_engine/test/models/my_engine/customer_test.rb

require 'test_helper'

module MyEngine
  class CustomerTest < ActiveSupport::TestCase

    test "alex is id 5" do
      assert my_engine_customers(:alex).id, 5
    end

  end
end
Run Code Online (Sandbox Code Playgroud)

添加require 'minitest/autorun'test/test_helper.rb,然后转换上面的测试:

require 'test_helper'

describe MyEngine::Customer do

  let(:alex) { my_engine_customers(:alex) } # error here (error shown below)

  it "alex is id 5" do
    assert alex.id, 5
  end

end
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

NoMethodError: undefined method `my_engine_customers' for
#<#<Class:0x007fb63e8f09e8>:0x007fb63e81b068>
Run Code Online (Sandbox Code Playgroud)

使用minitest/spec时如何访问灯具?

minitest rails-engines ruby-on-rails-4

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