[micronaut/Grails] GORM Duplicate property mapping of ..というエラー

以下のようなエラー

原因は、hasMany で持ってる子のデータの順序を担保するために、Listで保持していたがその時の名前が被っていたため。

このようにすると、 Book テーブルに、 books_idx というカラムを複数作ろうしてエラーになる。

このように、名前を変更すれば、
Book テーブル には、 books_idx と、 books_list_idx となるのでエラーを避けられる。




[micronaut/Grails] GORM Many-to-Many の保存と更新順序

忘れがちなので備忘録として

の二つがあって、Many to Many の関係にある。
この時、保存は以下の順序で行う。

DomainAのList(domainAList) と、DomainB(domainB)がある場合、
DomainB に、DomainA を全て入れてから、DomainBを保存する

更新は、DomainAのListと、DomainBがある場合
DomainAのListのコピーを作成しておき、(domainAListCopy) 、以下のように行う