nous allons aller directement aux problèmes (avec Grails 1.1.1, il devrait fonctionner sur un précédent)Grails appartient à, devrais-je?
J'ai 2 domaines à savoir: l'utilisateur et détail comme celui-ci:
Class User {
String userName ;
..... // another fields
static hasMany = [details:Detail];
}
Class Detail{
String detailName ;
... // another fields
static belongsTo = [user:User];
}
Maintenant, si je l'ai fait:
def user = User.get(1);
Detail.findAllByUser(user);
pourquoi produire une erreur?
Mais si je fais une modification sur Détail
Class Detail{
String detailName ;
... // another fields
User user;
static belongsTo = [user:User];
}
(en ajoutant l'utilisateur), il fonctionnera comme normal ...
est-il un effet en utilisant belongsTo? ou j'ai fait le concept des erreurs ici?
ok, il est raisonnable pour hasMany. qu'en est-il de belongsTo? Dois-je indiquer que si j'ai le type hasMany dans l'utilisateur? – nightingale2k1
Non, vous ne devez pas avoir un belongsTo dans la classe Detail. Cependant, si vous l'omettez, les suppressions ne seront pas cascadées. Par exemple, si vous supprimez un utilisateur, vous souhaiterez probablement que GORM supprime automatiquement tous les enregistrements de détails associés à cet utilisateur. Afin d'avoir cela géré automatiquement, vous avez besoin de l'belongsTo dans les détails. Dans votre situation je garderais l'appartTo. –
D'accord, merci John. ça aide beaucoup – nightingale2k1