首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Grails中如何按关联表中的列对结果进行排序?

在Grails中如何按关联表中的列对结果进行排序?
EN

Stack Overflow用户
提问于 2012-04-11 06:14:47
回答 2查看 1.8K关注 0票数 2

我有两个具有简单的一对多关系的域类(一个礼物可以有多个GiftInstance),如下所示。我希望检索给定用户的所有过期(可能还有其他条件),但根据与每个GiftInstance关联的Gift的‘GiftInstances’属性对结果进行排序。我该如何做到这一点呢?我更希望停留在Grails (动态查找器、条件等)的范围内,而不必执行原始SQL

代码语言:javascript
运行
复制
class Gift {

    String name;
    String description;
    Date expires;
}

class GiftInstance {

    static belongsTo = [gift: Gift]
    User user;
    ... other fields ...
}
EN

Stack Overflow用户

发布于 2012-04-11 06:42:06

您可以通过mapping in your domain class通过两种方式完成此操作。

在Gift类中设置排序和顺序,如下所示:

代码语言:javascript
运行
复制
class Gift {

    String name;
    String description;
    Date expires;

    static hasMany = [giftInstances: GiftInstance]

    static mapping = {
        giftInstances sort: "expired"
    }

}

或者在您的GiftInstance域类中。

代码语言:javascript
运行
复制
class GiftInstance {

    static belongsTo = [gift: Gift]
    User user
    boolean expired

    static mapping = {
        sort: "expired"
    }
}

是的,您还可以设置顺序。

票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10097243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档