0
이것은 Grails의에서 고객의 도메인 클래스 (버전 3.1) :Grails의
class Customer {
static mapWith = 'mongo'
String id
String email
Boolean blacklisted
String name
String telephone
Date dateCreated
Date lastUpdated
String language = 'en'
static constraints = {
email nullable: false
blacklisted nullable: false
name nullable: true
language nullable: true
telephone nullable: true
}
static mapping = {
version false
}
}
내가 삽입하고이 클래스를 사용하여 MongoDB에서 고객 모음으로 업데이트하고이 작동 할 수 벌금. Null 값을 사용하여 필드 중 하나를 저장하려고하면 문제가 발생합니다. 널 (null)에 값을 설정
이customer.telephone = null
customer.save()
MongoDB의 컬렉션에서 분야에 영향을주지 않습니다, 그 값은 업데이트 이전의 값으로 설정 상태로 유지됩니다. 예를 들어 전화기가 "1234567"로 설정되어 있고 Null로 업데이트하면 MongoDB의 값은 "1234567"로 유지됩니다.
save()
에 failOnError: true
과 flush: true
을 사용해 보았습니다. 둘 다 작동하지 않습니다. 어떤 제안?
null 값으로 저장 한 후 lastUpdated가 업데이트 되었습니까? null이 아닌 다른 값이 null 값과 동일한 커밋에서 갱신 되었습니까? –
@MikeW, lastUpdated 필드가 null 값으로 저장 한 후 업데이트 중입니다. 그리고 널이 아닌 값은 널값과 동일한? 미트에서 갱신됩니다. – Haris