Adicionar propriedade em join table
12/04/2010 00:00
0
Pessoal, estou com um problema aqui. Tenho um relacionamento N pra N entre as classes User e Group. Resumidamente: 1 Usuário poder fazer parte de N grupos e 1 grupo pode ter N usuários.
Criei o hasMany = [members:User] na class Group e estav adicionando e removendo usuários com o .addTo e .removeFrom.
O problema é que agora tenho grupos que são privados, ou seja, eu preciso liberar pessoas que se associaram a um grupo para participar dele. Pensei em colocar uma propriedade allowed: true/falsa mas eu não tenho essa join table nas minhas classes.
Qual a melhor forma de resolver isso?
Eu até crie uma classe para mapear essa join table e fiz o relacionamento dela com as outras 2 classes e também usando o belongsTo = User, Group mas tá um saco rs
Alguém me sugere algo melhor ou a saida é essa mesmo?

abs
Tags: Grails


0
Eu tenho uma sugestão.

A melhor maneira que eu vejo para resolver este seu problema é trata-lo pelo próprio controlador mesmo.
A partir dele verifique se o usuário pode participar ou não de um determinado grupo e, não podendo, evitar assim a criação de um novo registro.


0
É mas ai fica diferente. Eu queria poder fazer dessa forma mesmo, igual uma comunidade privada no orkut onde o dono da comunidade aceita ou não a entrada de alguém na mesma.
Na verdade já até comecei a fazer assim, só estou tendo problema na hora de instanciar um novo objeto dessa class da join table.
Eu dou um new e o objeto fica null. Já passei os valores das propriedades no new e já fiz também acessando as propriedades do objeto e colocando os valores nelas e depois dando o save. Não funciona, só retorna null para o objeto.
14/04/2010 00:00


0
Oi girakrok,

o ideal neste caso seria se você criasse mais uma entidade no seu sistema chamada "requisição" ou algo similar que fosse encaminhada para o dono do grupo e, somente quando este aceitasse, incluisse o outro usuário no grupo, não?

Isto inclusive te geraria na base de dados um histórico de quando a inclusão de usuários em grupos ocorreu, base de dados esta que poderia depois ser usadad pra auditar o sistema, o que acha?



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto