5

Grails がドメイン オブジェクトからテーブルを作成するとき、列の順序を指定することは可能ですか? ドメインで指定された列の順序を維持したいと思います。代わりに、ほとんどアルファベット順のようです。ドキュメントには何も見つかりませんでした。制約の指定について詳しく説明しているこの記事を見つけましたが、データベース列の問題は解決していないようです。

例:

class Foo {
    Long id
    String zee
    Integer baz
    Integer bar
}

データベースの列を次のように並べたいと思います。

id | zee | baz | bar

代わりに、次のようなものを取得します。

id | bar | baz | zee
4

2 に答える 2

2

Grails の外部でいつでも DB を作成し、任意の順序で列を配置できます。Grails は、提供されたスキーマを喜んで使用します (列の順序のみがデフォルトで作成したいものと異なると仮定します)。

@Burt が指摘したように、さらに優れたオプションは、データベース移行プラグインを使用してデータベースを作成 (および管理) することです。データベースに依存しない方法でデータベースをきめ細かく制御できます。また、アップグレードとロールバックの両方について、DB スキーマとスキーマの変更をコードとともにバージョン管理するという大きな利点もあります。

于 2012-08-16T20:08:32.157 に答える
2

これが私が知っている唯一の方法です。静的制約を使用し、注文でそれらを記述します

class Foo {
    Long id
    String zee
    Integer baz
    Integer bar
}

static constraints = {
    id()
    zee()
    baz()
    bar()
}
于 2016-08-02T07:21:18.187 に答える