0

Grails の "Class" クラスで次のエラーが表示されます。フィールドごとに、重複するフィールドがあることがわかります。私がやろうとしているのは、フィールドを関連するテーブル列にマップすることだけなので、これは意味がありません。クラス フィールドとマッピング クロージャのフィールドにはすべて下線が引かれています。これまでの私のクラスは次のとおりです。

package booklist

class Class {

Integer id
String name
String description
String instructor
String courseNumber
String lineNumber
List books
BigDecimal bookTotalPrice
String sequenceNumber
String subjectCode


static constraints = {

}

static mapping = {
    //Uses the default datasource
    table ''

    columns {
        id column: 'class_id'
        name column: 'class_name'
        description column: 'course_description'
        instructor column: 'instructor_name'
        courseNumber column: 'course_number'
        lineNumber column: 'line_number'
        bookTotalPrice column: 'book_total_price'
        sequenceNumber column: 'sequence_number'
        subjectCode column: 'subject_code'
    }

    }
}
4

1 に答える 1

2

名前を変更する必要のないフィールドを静的マッピングで宣言する必要はありません。これを書くだけです:

package booklist

class MyClass {

    Integer id
    String name
    String description
    String instructor
    String courseNumber
    String lineNumber
    List books
    BigDecimal bookTotalPrice
    String sequenceNumber
    String subjectCode

    static mapping = {
        description column: 'course_description'
    }
}

Grails は CoC (Convention Over Configuration) アプローチで動作します。何かを変更する必要がない場合は、それを記述しないでください。規約が使用されます。

列マッピングの詳細については、Grails のドキュメント ( http://grails.org/doc/latest/ref/Database%20Mapping/column.html ) を参照してください。

于 2013-01-30T17:53:25.687 に答える