2010-08-14 23 views
0

我新手,Grails和我試着用這裏找到link text
Grails的分頁標籤,當我試圖像他說的一樣這 控制器使用它:Grails的分頁標籤不訪問方法

def pageslist = { 
[pages: Page.list(params)] 
} 

視圖

< g:paginate next="Forward" prev="Back" maxsteps="5" controller="story" action="pageslist" total="${story.pages.count()}" /> 

它給了我什麼都沒有,而調試器不會進入控制器的方法..是什麼問題,是有任何其他方式˚F或者服務器端的方式分頁

回答

1

嘗試:

<g:paginate next="Forward" prev="Back" maxsteps="5" controller="story" 
      action="pageslist" total="${pages.count()}" /> 

因爲你已經返回地圖[pages: Page.list(params)]從控制器的型號,你將能夠從您的視圖訪問變量pages

編輯:

你需要得到要通過分頁頁面的總數。要麼使用total="${Page.count()}「或其他變量添加到您的模型

看到documentation on the Paginate tag更多

+0

我會嘗試它的先生,並將儘快確認你:)不能告訴你我有多少讚賞吃它 – 2010-08-15 06:31:46

+0

你不應該使用'pages.count()'作爲全部屬性,因爲'頁面'是已經分頁的頁面列表。只有在當前分頁步驟中顯示的頁面)。然而'total'屬性預計* total *項數(因爲它能夠確定分頁步驟的總數)。 – 2010-08-15 09:24:48

+0

它沒有工作它說,它不能計數空對象..它意味着網頁..當我做空安全頁?.count()它給了我另一個錯誤消息, 標籤[paginate]是缺少必需的屬性[總] 這意味着問題仍然存在,paginate根本不會調用pageslist函數:( – 2010-08-15 09:32:36

2

科林sugested最後,${Page.count()}和導入頁到您的GSP您應該使用:。

<% import pa.ck.age.Page %> 

或你可以添加另一個參數返回到視圖的模型:

def pageslist = { 
    [pages: Page.list(params), total: Page.count()] 
}