Мне нужна помощь с тем, что я считаю очень тривиальным.
class User {
String name
static hasMany = [files : File]
}
class File {
long size
}
Теперь, когда мне нужен общий размер всех файлов, которые есть у данного пользователя, я использую следующее, которое работает:
def user = User.get(id)
user.files.each(total+=it.size)
но насколько это уродливо, когда я уверен, что это можно сделать с помощью простого запроса на выборку с помощью простого SQL или GORM / CRITERIA
Я пробовал что-то вроде File.sumBySize .. ()
Или
def c = File.createCriteria()
def f = c.list{
eq("user", user) // What here ?
projections
{
sum("size")
}
}
Я не знаю, как указать родительские (пользовательские) отношения, которые не определены в классе File, но в таблицах объединения Grails
Любая помощь приветствуется