【问题标题】:Grails - sorting list of entities on gsp using sortableColumnGrails - 使用 sortableColumn 对 gsp 上的实体列表进行排序
【发布时间】:2014-07-09 14:13:29
【问题描述】:

我有以下实体:

class User {

    String name
    String contactName
    String primaryEmail
    String url
    String phoneNumber
    String address
    //..
}

我有显示所有用户列表的 gsp,我希望能够按联系人姓名、姓名和电话号码对用户进行排序,在控制器中我有 list() 方法,它只返回所有用户的列表:

class UserController {
     ...

    def list() {
        [users: User.all]
    }
}

我的gsp是这样的:

<body>
<table>
    <thead>
    <tr>
        <g:sortableColumn property="contactName" title="Bookmaker"/>
        <g:sortableColumn property="name" title="Name"/>
        <g:sortableColumn property="phoneNumber" title="Phone"/>
    </tr>
    </thead>
    <tbody>
    <g:each in="${users}" status="i" var="user">
        <tr>
            <td>${user.contactName}</td>
            <td>${user.name}</td>
            <td>${user.phoneNumber}</td>
        </tr>
    </g:each>
    </tbody>
</table>
</body>

但是,当我单击其中一个可排序的列时,请求已发送(类似于:“list?sort=phoneNumber&order=asc”),但响应始终相同。现在在我看来,实际上对列表进行排序的代码应该由我自己实现。还是我做错了什么?谢谢!

【问题讨论】:

    标签: grails grails-controller


    【解决方案1】:

    你又来了:)

    def list() {
        [users: User.list( params )]
    }
    

    【讨论】:

    • 好吧,你又为我节省了几个小时 :-) 谢谢我在与此标签相关的文档中没有找到此解决方案
    • 嗯,参考文档有这一切grails.org/doc/2.3.x/ref/Domain%20Classes/list.html
    • getAll() 太不灵活,无法进行分页和排序列表
    • 是的,但我说的是标签文档。当然我应该先看看列表,但还是谢谢你:-)
    猜你喜欢
    • 2012-01-05
    • 1970-01-01
    • 1970-01-01
    • 2014-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-05
    相关资源
    最近更新 更多