我有一個控制器,設置對象的狀態,一些邏輯,如果某些條件得到滿足:你將如何整理這個控制器邏輯?
if params[:concept][:consulted_legal] == 0 && params[:concept][:consulted_marketing] == 1
@concept.attributes = {:status => 'Awaiting Compliance Approval'}
elsif params[:concept][:consulted_marketing] == 0 && params[:concept][:consulted_legal] == 1
@concept.attributes = {:status => 'Awaiting Marketing Approval'}
elsif params[:concept][:consulted_marketing] == 0 && params[:concept][:consulted_legal] == 0
@concept.attributes = {:status => 'Awaiting Marketing & Legal Approval'}
else
@concept.attributes = {:status => 'Pending Approval'}
end
我之間共享創建和更新操作。你會如何去重構這種惡作劇?尋找最佳實踐。
新手編程和熱衷於清理我的代碼。
TIA。
謝謝bjeanes。這也更清潔。 – 2009-01-23 13:16:57
不確定你是在談論第一次還是第二次嘗試。我的第二個嘗試是列出的第一個,並使用了一個類似真值表的方法。如果他們是謹慎的四個國家,那絕對是最具可擴展性的國際海事組織。 – 2009-01-23 13:19:08