2012-02-01 53 views
0

我是Grails開發人員的初級用戶。我想創建一個新的簡單的MySQL CRUD應用程序,它具有可重複的字段。現在我不確定我的域應該如何。比方說,我有我的域名3個字段:Grails域名製作域可重複

String term 
String synonym 
String author 

我想使作者和/或同義詞重複:是着手兩個新領域類同義詞的正確途徑和作者,並把這個在我原來的域名:

static hasMany = [synonym: Synonym] 
static hasMany = [author: Author] 

在我看來,Grails的將有一個更聰明的方式來做到這一點,但也許我只是期望太高了..

+0

你做什麼看起來正確。雖然,不確定「可重複」是什麼意思。 – 2012-02-01 13:03:40

+0

做同義詞和作者一起去? – hvgotcodes 2012-02-01 13:05:16

+0

可重複我的意思是我需要能夠創建記錄,如:term =驢,同義詞=馬,同義詞=屁股,作者=作者1,作者=作者2,作者=作者3 – joskes 2012-02-01 13:09:50

回答

0

你叫什麼名字「重複」通常被稱爲一個單一對多的關係。一個術語有許多作者和許多同義詞。

到目前爲止,你做的看起來是正確的。

雖然我想建議,因爲他們是抱着來命名hasMany聲明中複數形式多個Synonyms/Authors

static hasMany = [synonyms: Synonym] 
static hasMany = [authors: Author] 

由於hasMany定義你還必須考慮的結果關於關係的另一面。作者也可能有許多術語(多對多)。對於同義詞,您必須評估是否允許重複使用同一個同義詞的多個術語,或者它只代表一個單一術語(一對多與多對多)。

+0

好的謝謝你的明確答案,並指出我到一對多的關係。找到了我想做的事的教程http://omarello.com/2010/08/grails-one-to-many-dynamic-forms/ – joskes 2012-02-01 19:01:42