어떻게하면 Play Framework 2 양식의 열거 형을 열거 형 값과 비교할 수 있습니까? 이 명령문은 동등한 경우에도 실패합니다.Play Framework 2 양식에서 enum을 어떻게 비교합니까?
@if(myForm("sectionType").value == SectionType.MAIN_CONTACT_INFO) {
}
어떻게하면 Play Framework 2 양식의 열거 형을 열거 형 값과 비교할 수 있습니까? 이 명령문은 동등한 경우에도 실패합니다.Play Framework 2 양식에서 enum을 어떻게 비교합니까?
@if(myForm("sectionType").value == SectionType.MAIN_CONTACT_INFO) {
}
당신은 당신이 직접 toString
을 사용할 수 있도록 myForm("sectionType").value
는, Option[String]
이라고 말한 때문에 Some("hello").toString
반환 "일부 (안녕하세요)".
나는이 구문을 시도하는 것이 좋습니다 :
myForm("sectionType").value.get == SectionType.MAIN_CONTACT_INFO.toString
// or .getOrElse("") to avoid errors
그리고 (즉,이 클래스가 모델 패키지에없는 경우.)
구문이 작동합니다. 가져 오기가 어떤 이유로 든 필요하지 않았습니다. – Brian
myForm을'어떤 종류의 (필요한 경우
SectionType
를 가져올 것을 잊지 마세요 "sectionType"). value'? – pepyakin'myForm ("sectionType")'은'play.api.data.Field' 유형입니다. 'myForm ("sectionType"). value는'Option [String]'유형입니다. – Brian
또한 @if (myForm ("sectionType"). value.toString == SectionType.MAIN_CONTACT_INFO.toString)를 시도했습니다. 두 개의 toString 메서드가 모두 "MAIN_CONTACT_INFO"를 반환하더라도이 작업은 실패합니다. – Brian