0

我正在使用一个名为"ice_cube"

在制定时间表时,我需要将一些整数传递给 .day() 方法,如下所示:

schedule.add_recurrence_rule IceCube::Rule.weekly(1).day(1,2,3)

当我直接这样做时,它可以工作。但是,当我尝试将包含整数的变量传递给 .day() 方法时,我会迷路。

试过这个:

days = [1,2,3]

schedule.add_recurrence_rule IceCube::Rule.weekly(1).day(days)

它不起作用。我得到的错误是......

NoMethodError (undefined method `<' for [1, 2, 3]:Array):

我犯了一个非常明显的错误吗?

我应该如何格式化我的变量days以便它被接受?

4

2 回答 2

4

您可能需要使用splat运算符将​​数组扩展为单独的参数(然后可能在方法中组合成单个数组days):

days = [1,2,3]

schedule.add_recurrence_rule IceCube::Rule.weekly(self.every.to_i).day(*days)
于 2012-01-06T21:06:00.733 回答
0
schedule.add_recurrence_rule IceCube::Rule.weekly(1).day(*days)
于 2012-01-06T21:03:04.007 回答