【问题标题】:Filter list in grailsgrails中的过滤器列表
【发布时间】:2012-03-30 09:46:50
【问题描述】:

我有两个域类。

class BillingServiceGroup
{
    Integer billingServiceGroupCode
    String billingServiceGrpDesc
    String status // ACTIVE or INACTIVE
}

class ServiceGroup
{
    String serviceGroupName
    String description
    BillingServiceGroup billingServiceGroup
}

当我查看serviceGroup 页面时。它显示了所有billingServiceGroup 的列表,但我的要求是只有具有status == ACTIVE 的行才能显示在列表中。

所以我必须根据状态值过滤列表。谁能提供一些代码来实现这个逻辑?

【问题讨论】:

  • 为什么您的status 字段不是booleanenum 类型?它会让你的事情变得更容易。
  • 我已将状态更改为枚举类型。枚举状态{ ACTIVE(true), INACTIVE(false) private boolean bool public Status(boolean bool){ this.bool = bool } }

标签: grails groovy


【解决方案1】:

尝试使用withCriteria

ServiceGroup.withCriteria {
    billingServiceGroup {
        eq('status', 'ACTIVE')
    }
}

【讨论】:

  • 抱歉,我们必须在哪里使用此代码??在域类或其他地方?
  • @AB - 我没有跟着你。你的控制器和视图是如何设置的?你只是用脚手架吗?如果是这样,您可能需要为您的ServiceGroup 域设置generate-all,并修改生成的控制器的list 操作。
【解决方案2】:

Grails documentation 包含一个使用where 方法的section on querying associations

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多