case
문을 정규식에서 전달 된 두 매개 변수를 고려하는 방법을 찾으려고합니다.매개 변수가 케이스에 전달 된 조건부 Ruby 사례 문을 작성하려면 어떻게해야합니까?
내 정규식 예는 다음과 같습니다
(/^(?:a|an|the) (RoleA|RoleB)
시도 |role_type, record_type|
를 수행 (New|Updated) Record$/)
에 액세스 할 때.
저는 case
성명을 가지고 있습니다. 지금은 역할 유형에 대해서만 설명하지만, role_type
과 record_type
에 대해서도 어떻게해야합니까?
내 목표는 레코드 유형이 "신규"또는 "업데이트 됨"일 때 역할 A가 다른 끝점 세트로 보내지는 것을 테스트하는 것입니다. 그리고 "새로 만들기"에서 전달할 때 역할 B가 다른 끝점 집합으로 지정되기를 원합니다. "및"업데이트 됨 ". 동일한 엔드 포인트로 전달 된 경우 record_type
에 대한 사례 설명만으로 충분합니다.
은 내가 지금있는 것은 :
case record_type
when 'New'
<do something>
when 'Updated'
<do something>
end
나는 역할이 무엇인지에 따라 동작을 전환하고 싶습니다. 이 작동하지 않았다 :
case record_type && role_type == 'RoleA'
when 'New'
<do something>
when 'Updated'
<do something>
end
case record_type && role_type == 'RoleB'
when 'New'
<do something>
when 'Updated'
<do something>
end
이 코드는 건너 뛴다. 나는이 루비가 어떤 명령문을 사용하는지 혼란 스럽다고 가정하고있다.
이 방법도 사용할 수 있습니다. 나는 혼란스러운 사람이었던 것 같다. 그리고 나는 이것을 위해 방법을 만드는 것에 대해 내가 무엇을 할 수 있는지 확실히 알 것이다. 감사! – qaminded