これは私がしばらくの間苦労してきたことです。事は:私は多くの(20かそこら)静的値の配列を持っています。私はと言うのはなので、実際にはいくつかのドメイン内の静的な配列として保存しているからです。私が知られているウェブサイトのリストを持っている場合たとえば、私が行いますGrails - ドメイン関連のプロパティを格納する場所
class Website {
...
static websites = ["web1", "web2" ...]
}
しかし、必要であれば、私は簡単に配列を変更することができますので、私はこれはちょうど、発展途上んが、私はときに実行するつもりだ何アプリケーションは展開の準備ができていますか?私のプロジェクトでは、ある時点でこれらの値の配列が変化する可能性が非常に高いです。私はそのことについて研究してきましたが、外部の.propertiesファイル内にアプリケーションプロパティを格納することはできますが、配列を追加するとアプリケーションがそれを認識できないため、配列を保存することは無意味です新しいプロパティの名前が必要な場所に追加されるまで
もう1つの方法は、この情報をデータベースに格納することですが、なんらかの理由で、2つの行、つまりIDと名前を持つ20以上のテーブルを追加するのは無駄です。
最後のオプションは、私が知る限り、XMLですが、私はあまり経験はありません。 GroovyはXMLファイルの作成と読み込みの方法は比較的簡単ですが、アプリケーションでレイアウトが事前定義されているXMLを変更することがどれほど難しいか分かりません。
変更を再コンパイルする必要があるため、config.groovyに格納することはオプションではありません。
私は、いくつかの "標準"(おそらくベストプラクティス?)に対処する方法を見つけていません。
質問は次のとおりです。これらのアレイをどこに保存するのですか?
#1と#3は確かに – David
だから、1対1の関係がたくさんあるだろう。そして、それらの属性のいくつかに応じてフィルタリングとソートが必要です。たとえば、Book.cname.nameOfCategory(別のテーブルの属性)をBook.nameOfCategory(テーブルに直接格納されている属性)よりもソートする方が本当に高速ですか? – GalmWing
複数のインスタンスに同じカテゴリがある場合は、1対1ではありません。あなたが恐怖を感じるパフォーマンスであれば、http://grails.org/doc/latest/guide/GORM.html#gormCompositionをご覧ください。 – Chris