pertence ao domínio múltiplo

Eu tenho 4 classes, incidentes, problemas, pedidos e outro é o Attachment.

Todos os domínios parecem .........

    Class Incidents
    {
   //other fields
       static hasOne = [attachment: Attachment]

       static constraints = [attachment nullable:true]
    }

    Class Problems
    {
   //other fields
       static hasOne = [attachment: Attachment]

       static constraints = [attachment nullable:true]
    }

    Class Requests
    {
   //other fields
       static hasOne = [attachment: Attachment]

       static constraints = [attachment nullable:true]
    }

    Class Attachment
    {
   //other fields
       static belongsTo= [
                   incident: Incidents, 
                   problem: Problems,
                   requests: Requests
]

   static constraints = {
        incident nullable: true
        problem nullable: true
        requests nullable: true
}

quando estou salvando o objeto do incidente, ele lança exceção, como Column 'problem_id' não pode ser nulo. o que fazer?

2
adicionado editado
Visualizações: 1

1 Respostas

Tente remover o hasOne em incidentes de classe, problemas, solicitações e substituí-lo por

   Attachment attachment
   static constraints = {attachment: unique: true, nullable:true}       
   static mapping = {
    attachment  cascade: "delete"
    }
5
adicionado
se eu remover esse relacionamento, ele permitirá a exclusão em cascata?
adicionado o autor sanghavi7, fonte
Sim, cara Funciona muito bem, thanx
adicionado o autor sanghavi7, fonte
Para exclusão em cascata, tente adicionar o mapeamento em cascata. Eu atualizei a resposta.
adicionado o autor Fabiano Taioli, fonte