0
RestfulController
하위 클래스의 show()
메서드를 재정의하는 간단한 코드가 있습니다. 다음 코드는 Grails 2.5.4 문서의 "Implementing the 'show' action"예제에서 수정되었습니다. 일치하는 문서가 데이터베이스 (MongoDB를)에서 발견되지동적 파인더에서 Grails (저장되지 않음) == null null
def show() {
Coupons instance = Coupons.findByCode(params.code)
print("instance: ${instance}")
if (instance == null) {
render status: 404
}
else {
return instance
}
}
의 print
문은 예상대로 null
객체를 나타냅니다. 일치하는 문서 발견 경우
instance: null
는 print
문은 다음을 인쇄합니다.
instance: com.example.Coupons: (unsaved)
제 질문은 문서가 발견되면 왜이 "저장되지 않은"상태로 돌아갈까요? 그리고 더 중요한 것은 왜 객체가 정확히 존재할 때 instance == null
이 true
으로 평가 되는가?
변수'code'가 정의되지 않았습니다. 아마도 당신은'params.code'를 찾을 것입니다. – dmahapatro
잡아 주셔서 감사합니다, @ dmahapatro. 그건 내 컨트롤러에서 전체 코드를 바꿔 쓰려고하는 오타였습니다. 나는'params.code'를 참조하기 위해 오타를 수정했습니다. –
'쿠폰'도메인 클래스를 추가 할 수 있습니까? – dmahapatro