私はこのようなドメインを持っています:
class Team {
hasOne [leader: Person]
hasMany [member: Person]
}
class Person {
belongsTo [team: Team]
}
ただし、テーブルが生成されるとき、チームテーブルにはleader_idのような列はありません。したがって、リーダーの関係は維持されません。
どうすれば修正できますか?
私はそれを理解しました、私が必要なのは
class Team {
belongsTo [leader: Person]
hasMany [member: Person]
}
class Person {
belongsTo [team: Team]
}
TeamテーブルがPersonへの目的の「リーダー」参照を持つことができるようにします。
ドキュメントによると:
hasOneアソシエーションを使用して、双方向の1対1の親ではなく、子テーブルに外部キー参照を格納します。
ここでの子テーブルはPersonであり、親はTeamです。Grailsは期待どおりに機能しています。