Определение Карта являетсяИсключение причины нарушения целостности данных Grails и причина?
class Map {
MapCoordinate center
Integer zoom
List path
static hasMany = [path: MapCoordinate]
static hasOne = [center: MapCoordinate]
static constraints = {
}
}
Определение MapCoordinate является
class MapCoordinate {
BigDecimal latitude
BigDecimal longitude
static belongsTo = [map: Map]
static mapping = {
latitude scale: 9
longitude scale: 9
}
static constraints = {
}
}
Этот простой скрипт не за исключением следующего
Map map = new Map()
def cent = new MapCoordinate(latitude: 0.123, longitude: 0.2424)
map.center = cent
map.zoom = 5
map.save(flush:true, failOnError: true)
Исключение
org.springframework.dao.DataIntegrityViolationException: could not insert: [MapCoordinate]; SQL [insert into map_coordinate (version, latitude, longitude, map_id, path_idx) values (?, ?, ?, ?, ?)]; constraint [null]; nested exception is org.hibernate.exception.ConstraintViolationException: could not insert: [MapCoordinate]
Может кто-нибудь, пожалуйста, объясните мне, в чем причина этой ошибки? Я ценю вашу помощь! Благодаря!
Я думаю, что проблема в том, что вам нужно 'Map' сэкономить' MapCoordinate', но так как вам нужно 'MapCoordinate' сохранить' Map', вы попадаете в круглую ссылку. – rvargas
@ rvargas вы можете предложить решение? Я пытаюсь создать карту с центром, масштабированием и списком путей. – kofhearts