Noob 帮助重新格式化 ifs 以 case Rails
大家好,谁能帮我用 Ruby 将此代码重构为 case 语句
def can_save?
if signed_in?
@user.updating_password = false
return true if @greeting.save & @user.save
elsif !guest_user? & @greeting.valid? & @user.valid?
sign_in(@user) if @greeting.save & @user.save
return true
elsif guest_user?
if !params[:user][:email].blank? & (@user.valid? & @greeting.valid?)
if (@greeting.save & @user.save)
sign_in(@user)
return true
end
elsif params[:user][:email].blank?
return true if @greeting.save
end
end
end
Hi can anyone help me refactor this code into case statements in Ruby
def can_save?
if signed_in?
@user.updating_password = false
return true if @greeting.save & @user.save
elsif !guest_user? & @greeting.valid? & @user.valid?
sign_in(@user) if @greeting.save & @user.save
return true
elsif guest_user?
if !params[:user][:email].blank? & (@user.valid? & @greeting.valid?)
if (@greeting.save & @user.save)
sign_in(@user)
return true
end
elsif params[:user][:email].blank?
return true if @greeting.save
end
end
end
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)