gpt4 book ai didi

ruby - 这个 case 语句 Ruby 有问题

转载 作者:太空宇宙 更新时间:2023-11-03 17:38:10 24 4
gpt4 key购买 nike

有人能帮我理解如何正确地编写这个 case 语句吗?它不起作用,作为一个 NOOB,我不知道如何修复它:

def hide_link?(link, mailing)
case link
when 'edit' && ['sent', 'sending', 'archived'].include?(mailing.status)
return true
when 'send_schedule' && ['sent', 'sending', 'archived'].include?(mailing.status)
return true
when 'archive' && ['archived'].include?(mailing.status)
puts "I should be in here"
return true
else 'dashboard' && ['sending', 'draft'].include?(mailing.status)
return true
end
end

基本上我想在链接符合特定条件时返回 true。

最佳答案

我相信如果链接不符合这些标准,该方法应该返回 false。因此:

def hide_link?(link, mailing)
case link
when 'edit'
['sent', 'sending', 'archived'].include?(mailing.status)
when 'send_schedule'
['sent', 'sending', 'archived'].include?(mailing.status)
when 'archive'
puts "I should be in here"
['archived'].include?(mailing.status)
when 'dashboard'
['sending', 'draft'].include?(mailing.status)
else
false
end
end

构造 [...].include?(mailing.status) 有结果 truefalse 将作为hide_link? 方法的结果。

关于ruby - 这个 case 语句 Ruby 有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10960310/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com