在這裏,我想向你展示一個演示代碼:塊運行的代碼只有在一定的條件
if ENV["PRODUCTION"]
user.apply_discount!
product.update!
else
VCR.use_cassette(vcr_cassette) do
user.apply_discount!
product.update!
end
end
所以基本上兩次我也有同樣的代碼:
user.apply_discount!
product.update!
如何我可以防止這種代碼重複嗎?你會怎麼做? 我正在考慮將代碼放在一個Block中,然後直接或者在塊中調用它。這裏有一個例子:
actions = Proc.new do
user.apply_discount!
product.update!
end
if ENV["PRODUCTION"]
actions.call
else
VCR.use_cassette(vcr_cassette) do
actions.call
end
end
你有其他的想法?解決方案更好謝謝
這很酷。但是'ENV('PRODUCTION')'在方法中可以訪問,所以我們需要將它作爲參數傳遞? – SteveTurczyn
@SteveTurczyn良好的通話。無需通過無處不在的可變變量:) –