2012-03-27 27 views
0

我試圖對列表進行排序,但需要連接才能進行排序。我使用的代碼如下所示。如果我沒有排序,那麼它會給我正確的數據,但是當像下面那樣排序時,它會與多個表連接,這會導致在結果中顯示冗餘數據,因爲某些表具有一對多的關係。Grails - 多個連接在列表視圖中顯示冗餘數據

def result = Server.createCriteria().list() { 
       connection { 
        customerLocation { 
         eq("customer", customer.id) 
        } 
       } 
       serverSide { 
        clientSide { 
         clientSideMachine { 
          domain { 
           order "DomainName", "asc" 
          } 
         } 
        } 
       } 
      } 

我想告訴

A1 A2 A3 
B1 B2 B3 
C1 C2 C3 
在我的名單

,但上面的代碼生成由於加入冗餘數據...

A1 A2 A3 
A1 A2 A3 
A1 A2 A3 
B1 B2 B3 
B1 B2 B3 
C1 C2 C3 
C1 C2 C3 

是否有一個簡單的方法來處理這個問題? ?我也在GSP中使用分頁。

回答

1

要刪除重複項,您可以指定不同的列表,但會被警告這會破壞分頁。

criteria.listDistinct 

,而不是list