Как определить порядок отображения по умолчанию для производных классов домена в Grails? - PullRequest
0 голосов
/ 17 февраля 2010

В Grails 1.2.1 я использую класс базового домена и производные классы домена и определяю ограничения во всех из них. Шаблоны скаффолдинга (я использую i18n) определяют порядок отображения полей по умолчанию на основе этих ограничений. Моя проблема: что бы я ни делал, поля из базового класса всегда отображаются перед полями из производных классов.

Итак, вот пример таких классов:

abstract class BaseEntity {

String name
String description
String link

  static constraints = {
    name(blank: false)
    description(blank: true, maxSize: 131072)
    link(url: true, blank: true)
  }
}

class BacklogItem extends BaseEntity {

String type
String priority

  static constraints = {
    name(unique: true)
    type(inList:["Bug", "Enhancement", "New Feature", "Task"])
    priority(inList:["Low", "Medium", "High"])
    description()
    link()
  }
}

Теперь я хотел бы, чтобы поля отображались в порядке, определенном в ограничениях Item ( description и link в конце). Но независимо от того, что я делаю, name , description и link всегда являются первыми тремя полями в create / show / edit из-за базового класса, когда я пытаюсь заставить их до конца в производных классовых ограничений.

Как бы вы решили это?

1 Ответ

0 голосов
/ 24 февраля 2010

Я уберу ограничения из базового класса и дублирую их в каждом производном классе. Это означает дублирование кода, но это позволяет мне указать порядок отображения в каждом (производном) классе встроенным способом Grails .

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