0

生成された ID を持つドメイン クラスを使用しています。

class User {
   ...
   static mapping = {
      id generator: 'assigned', name: 'uid'
   }

   Long uid
   ...
}

しかし、使用してインスタンスを取得しようとすると

User.get(1)

null を返します。私が使用すると動作します

User.findByUid(uid)

ID の生成時に Domain.get または Domain.read を使用することはできませんか?

4

2 に答える 2

1

ID が割り当てられていても、属性を宣言する必要はありません。

class User {
  static mapping = {
    id generator: 'assigned' column: 'uid'
  }
}

ここで重要なのは、データベース内の列名をマップすることです。

于 2013-04-16T20:05:54.430 に答える
1

セルジオの答えに加えて

generator戦略は、オブジェクトの保存中assignedにアプリケーションがIDを持っていることを意味します。assign以下のようなことを行った場合はUser.get(1)、割り当てずに保存中に例外がスローされます。id

def user = new User(id: 1).save(flush: true)

于 2013-04-16T20:12:22.270 に答える