1

次のクラスを作成すると、次のコンパイルエラーが発生します。

プロパティを解決できませんでした

どうすれば次のことを達成できますか?

class Employee{
  String Name
  String Email
  Employee Manager
  static hasMany = [desginations:Designation]    

  static constraints = {
  Name(unique:true)
  Email(unique:true)
  }

ありがとう、大いに感謝します。

4

1 に答える 1

5

GORMは、その命名規則に従うことに慎重になる可能性があります。特に、フィールド名は小文字で始まるキャメルケースにする必要があります。

次の定義で:

class Employee {
    String name
    String email
    Employee manager

    static constraints = {
        name(unique:true)
        email(unique:true)
        manager(nullable:true)
    }
}

私は次のようなマネージャーと一緒に従業員を作成することができます:

manager = new Employee(name: 'manager', email: 'manager@example.com')
manager.save()
employee = new Employee(name: 'employee', email: 'employee@example.com')
employee.manager = manager
employee.save()

編集:fabien7474が指摘したように、重要な部分はmanager(nullable:true)制約です。これにより、マネージャーを割り当てずに従業員のレコードを保存できます。上記の例では、という名前の従業員manageremployeeのマネージャーですが、managerそれ自体にはマネージャーがいません。これは、データベースのマネージャー列のNULL値で表されます。

于 2010-03-22T16:51:43.860 に答える