Поля Grails, делающие поля повторяемыми - PullRequest
0 голосов
/ 01 февраля 2012

Я новичок в разработке Grails. Я хочу создать новое простое приложение MySQL CRUD, в котором есть повторяющиеся поля. Теперь я не уверен, как должен выглядеть мой домен. Допустим, у меня есть 3 поля в моем домене:

String term
String synonym
String author 

Я хочу, чтобы автор и / или синоним повторялись: это правильный способ сделать два новых класса домена Синоним и Автор и поместить их в исходный домен:

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

Мне кажется, у Граилса был бы более умный способ сделать это, но, возможно, я просто слишком многого ожидаю ..

1 Ответ

0 голосов
/ 01 февраля 2012

То, что вы называете «повторяемым», обычно называют отношением «один ко многим».У одного термина есть много авторов и много синонимов.

Пока то, что вы делаете, выглядит правильно.

Хотя я хотел бы предложить назвать hasMany объявления во множественном числе образуют, поскольку они содержат несколько Synonyms / Authors:

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

. Как следствие определения hasMany, вы также должны подумать о другой стороне отношений.У автора также может быть много терминов (многие ко многим).Для синонима вы должны оценить, хотите ли вы разрешить повторное использование одного и того же синонима для нескольких терминов или только один термин (один ко многим против многих ко многим).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...