Lo + Leído
Eventos destacados
Artículos para tus primeros pasos
Si estás empezando a introducirte en el mundo de Groovy y Grails, no te pierdas nuestros artículos básicos:
- Introducción a Groovy, parte 1 (Andrés Almiray)
- Introducción a Groovy, parte 2 (Andrés Almiray)
- Introducción a Groovy, parte 3 (Andrés Almiray)
- Introducción a Grails (Material Seminario ImaginaWorks)
Los protagonistas te cuentan de qué van los proyectos más importantes del mundo Groovy:
Grails
Como hacer relacion N-N
galorn - sábado 17/07/2010Re: Como hacer relacion N-N
galorn - lunes 19/07/2010Pues estoy probando de varias maneras y no lo consigo.
Te pongo el modelo de datos:
class SessionChat {
Integer tiempoSesion;
Integer numeroParticipantes;
static hasMany = [Usuarios:User]
public SessionChat() {
super();
// TODO Auto-generated constructor stub
}
static constraints = {
tiempoSesion(min:1)
numeroParticipantes(min:1)
}
}
class User {
String name;
static hasMany = [Sesiones:SessionChat]
static belongsTo = SessionChat
static constraints = {
name(blank:false,size:2..50)
}
}
Y aquí pongo el código exacto que estoy intentando hacer en el controlador (que lo he modificado un poco de como lo he puesto antes):
def p = new SessionChat(tiempoSesion:tiempoInt,numeroParticipantes:numP)
p.save(flush:true)
//ME GUARDA BIEN LA SESSIONCHAT!!! pero lo siguiente me da error en el addToUsuarios:
for(int i=0; i<numP; i++){
p.addToUsuarios(new User(name:nombreParticipanteSesion[i]))
}
Re: Como hacer relacion N-N
galorn - lunes 19/07/2010Pues estoy probando de varias maneras y no lo consigo.
Te pongo el modelo de datos:
class SessionChat {
Integer tiempoSesion;
Integer numeroParticipantes;
static hasMany = [Usuarios:User]
public SessionChat() {
super();
// TODO Auto-generated constructor stub
}
static constraints = {
tiempoSesion(min:1)
numeroParticipantes(min:1)
}
}
class User {
String name;
static hasMany = [Sesiones:SessionChat]
static belongsTo = SessionChat
static constraints = {
name(blank:false,size:2..50)
}
}
Y aquí pongo el código exacto que estoy intentando hacer en el controlador (que lo he modificado un poco de como lo he puesto antes):
def p = new SessionChat(tiempoSesion:tiempoInt,numeroParticipantes:numP)
p.save(flush:true)
//ME GUARDA BIEN LA SESSIONCHAT!!! pero lo siguiente me da error en el addToUsuarios:
for(int i=0; i<numP; i++){
p.addToUsuarios(new User(name:nombreParticipanteSesion[i]))
}
Re: Como hacer relacion N-N
galorn - lunes 19/07/2010Pues estoy probando de varias maneras y no lo consigo.
Te pongo el modelo de datos:
class SessionChat {
Integer tiempoSesion;
Integer numeroParticipantes;
static hasMany = [Usuarios:User]
public SessionChat() {
super();
// TODO Auto-generated constructor stub
}
static constraints = {
tiempoSesion(min:1)
numeroParticipantes(min:1)
}
}
class User {
String name;
static hasMany = [Sesiones:SessionChat]
static belongsTo = SessionChat
static constraints = {
name(blank:false,size:2..50)
}
}
Y aquí pongo el código exacto que estoy intentando hacer en el controlador (que lo he modificado un poco de como lo he puesto antes):
def p = new SessionChat(tiempoSesion:tiempoInt,numeroParticipantes:numP)
p.save(flush:true)
//ME GUARDA BIEN LA SESSIONCHAT!!! pero lo siguiente me da error en el addToUsuarios:
for(int i=0; i<numP; i++){
p.addToUsuarios(new User(name:nombreParticipanteSesion[i]))
}
Re: Como hacer relacion N-N
galorn - lunes 19/07/2010Pues estoy probando de varias maneras y no lo consigo.
Te pongo el modelo de datos:
class SessionChat {
Integer tiempoSesion;
Integer numeroParticipantes;
static hasMany = [Usuarios:User]
public SessionChat() {
super();
// TODO Auto-generated constructor stub
}
static constraints = {
tiempoSesion(min:1)
numeroParticipantes(min:1)
}
}
class User {
String name;
static hasMany = [Sesiones:SessionChat]
static belongsTo = SessionChat
static constraints = {
name(blank:false,size:2..50)
}
}
Y aquí pongo el código exacto que estoy intentando hacer en el controlador (que lo he modificado un poco de como lo he puesto antes):
def p = new SessionChat(tiempoSesion:tiempoInt,numeroParticipantes:numP)
p.save(flush:true)
//ME GUARDA BIEN LA SESSIONCHAT!!! pero lo siguiente me da error en el addToUsuarios:
for(int i=0; i<numP; i++){
p.addToUsuarios(new User(name:nombreParticipanteSesion[i]))
}
Re: Como hacer relacion N-N
galorn - lunes 19/07/2010Pues estoy probando de varias maneras y no lo consigo.
Te pongo el modelo de datos:
class SessionChat {
Integer tiempoSesion;
Integer numeroParticipantes;
static hasMany = [Usuarios:User]
public SessionChat() {
super();
// TODO Auto-generated constructor stub
}
static constraints = {
tiempoSesion(min:1)
numeroParticipantes(min:1)
}
}
class User {
String name;
static hasMany = [Sesiones:SessionChat]
static belongsTo = SessionChat
static constraints = {
name(blank:false,size:2..50)
}
}
Y aquí pongo el código exacto que estoy intentando hacer en el controlador (que lo he modificado un poco de como lo he puesto antes):
def p = new SessionChat(tiempoSesion:tiempoInt,numeroParticipantes:numP)
p.save(flush:true)
//ME GUARDA BIEN LA SESSIONCHAT!!! pero lo siguiente me da error en el addToUsuarios:
for(int i=0; i<numP; i++){
p.addToUsuarios(new User(name:nombreParticipanteSesion[i]))
}
Re: Como hacer relacion N-N
galorn - lunes 19/07/2010Pues estoy probando de varias maneras y no lo consigo.
Te pongo el modelo de datos:
class SessionChat {
Integer tiempoSesion;
Integer numeroParticipantes;
static hasMany = [Usuarios:User]
public SessionChat() {
super();
// TODO Auto-generated constructor stub
}
static constraints = {
tiempoSesion(min:1)
numeroParticipantes(min:1)
}
}
class User {
String name;
static hasMany = [Sesiones:SessionChat]
static belongsTo = SessionChat
static constraints = {
name(blank:false,size:2..50)
}
}
Y aquí pongo el código exacto que estoy intentando hacer en el controlador (que lo he modificado un poco de como lo he puesto antes):
def p = new SessionChat(tiempoSesion:tiempoInt,numeroParticipantes:numP)
p.save(flush:true)
//ME GUARDA BIEN LA SESSIONCHAT!!! pero lo siguiente me da error en el addToUsuarios:
for(int i=0; i<numP; i++){
p.addToUsuarios(new User(name:nombreParticipanteSesion[i]))
}
Re: Como hacer relacion N-N
galorn - lunes 19/07/2010Re: Como hacer relacion N-N
galorn - lunes 19/07/2010SOLUCIONADO
La cuestión era poner:
static hasMany = [Sesiones:SessionChat] con minuscula, o sea static hasMany = [sesiones:SessionChat]
y lo mismo con el otro hasMany en SessionChat...
Un saludo a todos!
Re: Como hacer relacion N-N
Pilli - martes 20/07/2010Me alegro :P
Me vendrá bien tu solución, por que seguro que me va a pasar.
Si alguién de los que tienen más experiencia nos puede explicar el porqué sería de agradecer. Supongo que será cosa de la generación automática de codigo.
Un saludo.
Re: Como hacer relacion N-N
Pilli - lunes 19/07/2010Buenas.
El método addToUsuarios() te lo crea GORM automaticamente según tu modelo de datos.
Puedes probar a hacerlo todo paso a paso y ver como queda. Por ejemplo
a = SessionChat.get(seleccionarSesion[i])
Compruebas que esté bien.
a.addToUsuarios(new User(name:nombreUsuario))
Compruebas.
a.save()
Compruebas.
No se me ocurre nada más.
Pon el módelo de datos a ver si veo algún fallo/error.
Un saludo.