Tôi đang cố triển khai hai loại mối quan hệ khác nhau giữa hai lớp miền trong Grails.Grails: nhiều mối quan hệ giữa hai đối tượng miền
Hãy xem xét những điều sau; Tôi có hai lớp miền, một lớp Tác giả và Sách với một Tác giả có nhiều Sách.
class Author{
String name
}
class Book{
String title
static belongsTo = [author:Author]
}
Ở trên mô tả mối quan hệ rất cơ bản giữa nhiều tác giả và sách. Nhưng tôi cũng muốn một Tác giả có khái niệm về danh sách các cuốn sách yêu thích. Điều này lý tưởng sẽ được biểu diễn như một mối quan hệ riêng biệt với nhiều mối quan hệ mô tả cùng một đối tượng Book như một danh sách và tồn tại như vậy.
class Author{
String name
static hasMany = [favouriteBooks: Book]
static mapping = {
favouriteBooks joinTable: [name: 'favourite_books',
key: 'author_id']
}
}
class Book{
String title
static belongsTo = [client:Client]
}
Tôi đã cố gắng mô tả điều này như trên (trong số nhiều phương pháp khác) và cuối cùng là bảng cơ sở dữ liệu (favourite_books) không được tạo. Tôi không nhận được bất kỳ lỗi nào. Đây là cách duy nhất tôi có thể nghĩ đến việc làm điều này mà không cần sử dụng thêm bất kỳ vật gì mà tôi muốn tránh để giữ cho mô hình đơn giản. Tôi cảm thấy tôi đang đi đúng hướng nhưng có thể thiếu một số phần quan trọng của câu đố.
Mọi trợ giúp sẽ được đánh giá cao.
có bạn cố gắng ** sạch, xuất cảnh, grails ** một lần nữa, sau đó ** chạy ứng dụng **. Đôi khi grails không nhận thay đổi tên miền của bạn mà không có 'clean' – ikumen
Trong ví dụ đầu tiên ở trên, bạn đang thiếu thuộc tính' hasMany' ở bên 'Author' và trong ví dụ thứ hai, không có tham chiếu đến' favouriteBooks' relatiionship trên bên 'Book'. –