Как узнать, кто является родителем в отношениях GrailsMany? - PullRequest
5 голосов
/ 20 марта 2012

У нас есть старое приложение, в котором отношения определены следующим образом:

class Practice {
   String name
   static hasmany = [doctors:Doctor]
}

и

class Doctor {
  String name
}

Нет отношения belongsTo, определенного в Doctor, как мыне хотите каскадно удалять доктора, когда Practice удаляется.Это очень старый код, и его не нужно менять.

Теперь, в соответствии с новой функциональностью, пользователь должен знать, с каким Practice s связан Doctor, при просмотре сведений о Doctor.Кто-нибудь может мне помочь, зная, какой самый простой способ добиться этого без внесения изменений в объект домена?

Ответы [ 2 ]

7 голосов
/ 20 марта 2012

Если переменная doctor содержит доктора, от которого вы хотите составить список практик, вы можете получить список Practice объектов, имеющих этого доктора в отношениях с врачами, выполнив следующий критерий запроса:

def practices = Practice.withCriteria {
  doctors {
    idEq(doctor.id)
  }
}
0 голосов
/ 13 марта 2014

Только для записи

def practices = Practice.withCriteria {
  doctors {
    eq("id",doctor.id)
  }
}
...