我有这个嵌套的 if 语句,我不知道如何重构它......它非常简单,但我无法得到正确的想法,希望有人能提供帮助。
首先我有一个嵌套的 if 语句(坏):
unless record.valid?
if condition_1
action_1
elsif condition_2
action_2
elsif condition_3
action_3
end
end
然后我尝试了这个,但这看起来并没有更好(没有任何内容的if语句也很糟糕):
if record.valid?
# do nothing
elsif condition_1
action_1
elsif condition_2
action_2
elsif condition_3
action_3
end
有没有人知道如何重构这些语句以使其看起来更好?
更新:解决方案(基于@thomasfedb 和@undur_gongor)
我最终做的只是:
return if record.valid?
if condition_1
action_1
elsif condition_2
action_2
elsif condition_3
action_3
end