Grails. Конфликт имен
Как grails ведет себя при перекрытии полей и как разрешить ситуацию? Также как обратиться к полю child.parent.isAlive?
class Parent {
Boolean isAlive
static mapping = {
table 'parents'
}
}
class Child {
Boolean isAlive
static belongsTo = [parent: Parent]
static mapping = {
table 'children'
}
}
Есть фильтр, который должен отсеивать записи по параметру с фронта
filter(HibernateCriteriaBuilder crit, Map params) {
...
crit.with {
...
if (!params.someBooleanParam) {
or {
isNull("child.parent.isAlive")
eq("child.parent.isAlive", false)
}
}
}
}
Вылетает ошибка, что нет указанного поля
Ответы (1 шт):
Автор решения: in_trance
→ Ссылка
Русское комьюнити по grails нулевое почти (
Пошел другим путем. Захардкодил прямым нативным запросом.
Есть предположение, что child.parent - это set, соответственно, нужно его обходить перед доступом к полю alive