改进将许多参数传递给方法的代码

时间:2014-03-19 17:16:32

标签: ruby-on-rails methods resque

我有一个Resque工作,需要我控制器的5个参数。我知道将这么多参数传递给方法并不是很好,所以我想知道什么是改进它的好方法。

这是作业调用在控制器中的样子:

Resque.enqueue(ExporterJob, “游戏”,date_range_array,则params [:game_code],国家[:ID],current_user.email)

1 个答案:

答案 0 :(得分:0)

如果你有很多工作要通过这么多参数,那么理论上你可以创建一些JSON可序列化的游戏导出器对象,并将所有参数封装为属性,但这似乎只是一个开销一份工作。

传递太多的争论可能是一种过多耦合的气味,但如果你确定设计是好的,那么我就不会想到如何改善这种情况 - 只要保持原样。 :)