2014-02-16 5 views
0

У меня возникла проблема с созданием двунаправленных отношений «много ко многим» в GORM, и решения, которые я нахожу, на самом деле не то, что я хотел бы сделать.Grails Many-to-Many Bidirectional

Отношения, которые я установил, позволяют автору иметь несколько книг, но не наоборот (право собственности на стороне автора). Это код, который у меня есть.

class Author { 

    String name 

    static hasMany = [books:Book] 

     static constraints = { 
      name(nullable:false) 
     } 
     String toString() { 
      name 
     } 
} 

class Book { 

    String name 
    String type 
    Integer year 
    Author authors 

    static belongsTo = [authors:Author] 
    static hasMany = [authors:Author] 

    static constraints = { 
     name(nullable:false) 
     type(nullable:false) 
     year(nullable:true) 
     authors(nullable:false) 
    } 

    String toString() { 
     name 
    } 
} 

Я хотел бы отношения быть такой, что, когда я редактирую книгу, я могу выбрать несколько авторов, помимо того, что несколько книг того же автора, когда я редактировать автора.

ответ

0

Grails поддерживает многие из многих реализаций, и ваш код должен работать правильно ... но есть одна небольшая проблема ... scaffolding не поддерживает его, поэтому вам нужно написать свой собственный код, чтобы обрабатывать отношения, как вы хотите!

+0

ahhhh, который имеет прекрасный смысл. Спасибо Маури! – Boogiechillin