2014-03-19 21 views
0

我有一個Resque作業,需要5個參數從我的控制器。我知道把這麼多參數傳遞給一種方法並不是很好,所以我想知道什麼是改進它的好方法。改進代碼,通過許多參數傳遞給方法

這裏是作業調用的樣子控制器:

Resque.enqueue(ExporterJob, 「遊戲」,date_range_array,則params [:game_code],國[:編號],current_user.email)

回答

0

如果你有很多工作可以通過這麼多參數,那麼理論上你可以創建一些遊戲導出器對象,它是JSON可序列化的,並將所有參數封裝爲屬性,但這似乎是一個開銷一份工作。

傳遞過多的參數可能會產生過多耦合的氣味,但是如果您確信設計是可以的,那麼我無法想出如何改進這種方式 - 只要保持原樣即可。 :)