Tôi đang cố tải Phụ huynh riêng biệt bằng Tiêu chí trong Grails. Truy vấn là như saucách nhận kết quả riêng biệt bằng cách sử dụng Phép chiếu và Tiêu chí
Query:
def criteria = Parent.createCriteria();
results = criteria.list(max:params.max, offset:params.offset){
projections{ groupProperty('id') }
children{
books{
like('title',"%book")
}
}
order("id","asc")
}
miền Lớp
class Parent {
String name
static hasMany = [children:Child]
static constraints = {
}
}
class Child {
String name
Parent parent
static belongsTo = [parent:Parent]
static hasMany = [books:Book]
static constraints = {
}
}
class Book {
String title
Child child
static belongsTo = [child:Child]
static constraints = {
}
}
Câu hỏi: Tôi không thể nhận được dòng chuyên biệt.
Phương pháp tiếp cận được chấp nhận khác và kết quả của chúng: Tôi không biết lý do tại sao groupProperty không hoạt động. Tôi đã thử riêng biệt trong các dự án thay vì groupProperty và nó không phải là trái cây quá !. nếu tôi sử dụng tiêu chí.listDistinct thay vì tiêu chí.list thì tôi có thể nhận được Dòng cha mẹ riêng biệt nhưng cách tiếp cận trước đó yêu cầu phải nhận được totalCount từ truy vấn bổ sung để phân trang. Vì vậy tôi rất marry trong việc Rows Chánh biệt sử dụng criteria.list
Cảm ơn trước
Mục tiêu cuối cùng của bạn là gì? Bạn đang cố gắng để có được một danh sách các bậc cha mẹ có con có sách phù hợp với một tiêu đề cụ thể? – Pat
thực sự tôi muốn tải tất cả các bậc cha mẹ, độc đáo, những người có trẻ em với sách có tiêu đề '% M%' và có vấn đề là groupproperty. Kết quả không chứa cha mẹ riêng biệt. Nếu khó hiểu truy vấn thì hãy thay thế mệnh đề truy vấn đã nói ở trên bằng "trẻ em { trẻ em { như ('name'," pau% ") } } thứ tự (" id "," asc ") – Rehman
mối quan hệ: Phụ huynh: Trẻ em [1: N] và Trẻ em: Sách [1: N] – Rehman