Ich habe eine Grails-App mit einer Domain Restaurant und einer Domain Person.
class Restaurant {
String name
static belongsTo = [ owner: Person ]
}
class Person {
String name
static hasMany = [ favoriteRestaurants : Restaurant ]
}
Mein Problem ist, dass GORM nur zwei Tabellen erstellt, Restaurant und Person, wobei Restaurant eine owner_id hat. Was mir jedoch fehlt, ist die Join-Tabelle, die die Lieblingsrestaurants einer Person mit ihr verknüpft.
Ich kann verstehen, warum GORM es so macht (bidirektional one-to-many), aber ich kann nicht herausfinden, wie ich es so machen kann, wie ich es möchte (1x unidirektional one-to-many, 1x unidirektional many-to-one). Ich denke, ich sollte verwenden mappedBy aber ich weiß nicht, was ich ihm zuordnen soll, da es keine Rückverknüpfung gibt :-(
Darüber hinaus habe ich zunächst die folgenden Bereiche in Betracht gezogen:
class Restaurant {
String name
static belongsTo = [ owner: Person ]
static hasMany = [ outstandingCouponOwners : Person ]
}
class Person {
String name
static hasMany = [ favoriteRestaurants : Restaurant ]
}
wo es eine weitere eins-zu-viele-Beziehung gibt (und auch hier gibt es nichts, was man auf der anderen Seite zuordnen könnte)