Grails: Obtenha uma lista de elementos com um relacionamento pertencente?

StackOverflow https://stackoverflow.com/questions/20353837

  •  25-08-2022
  •  | 
  •  

Pergunta

Supondo que eu tenho um Person e a Status. Se Status é como isso :

class Status {
    String text
    Person author
}

Eu teria feito algo assim para obter a lista de mensagens do usuário atual:

def messages = Status.withCriteria {
    author { 
        eq 'username', currentPerson.username
    }
}

Mas se meu relacionamento em Status É assim, como posso fazer isso?

static belongsTo = [Person]

Obrigado pela ajuda.

Foi útil?

Solução

Eu tendem a usar a notação do mapa para pertencer, então eu faria assim:

class Status {
   String text
   static belongsTo = [author: Person]
}

Então sua consulta é fácil:

def messages = Status.findAllByAuthor(currentPerson)

Se você tivesse adicionado bidirecional à pessoa com Hasmany:

class Person {

   static hasMany = [messages: Status]
}

Você também pode fazer isso:

def messages = currentPerson.messages
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top