Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Grails 2.0 grails可搜索插件:如何使属性仅用于排序,而不用于搜索_Grails 2.0_Grails Plugin_Grails Controller_Compass Lucene_Grails Searchable - Fatal编程技术网

Grails 2.0 grails可搜索插件:如何使属性仅用于排序,而不用于搜索

Grails 2.0 grails可搜索插件:如何使属性仅用于排序,而不用于搜索,grails-2.0,grails-plugin,grails-controller,compass-lucene,grails-searchable,Grails 2.0,Grails Plugin,Grails Controller,Compass Lucene,Grails Searchable,我在我的项目中使用可搜索插件。我有一个简单的域,如下所示 Class User { String title String Description int vote Date date } static searchable = { only: ['description','title','vote','date'] date name: 's

我在我的项目中使用可搜索插件。我有一个简单的域,如下所示

    Class User {
        String title
        String Description
        int vote
        Date date
            }
    static searchable = {
            only: ['description','title','vote','date']
            date name: 'sortableTitle1', index: 'not_analyzed'
            vote name: 'sortableTitle2', index: 'not_analyzed'

}
我需要把投票和日期作为一个可排序的元素。并且在搜索时不应考虑它
我也知道,它可以通过使用下面的代码来完成

date name: 'sortableTitle1', index: 'not_analyzed' store:'no'

但在这种情况下,对象的结果列表将不包含date属性,因此无法在gsp中显示。
因此,我如何使“date”元素用于显示、排序,而不是在gsp中搜索。

我无法添加新注释,因此下面是我回答的下一部分:

如何设置类的映射:

可以在映射()中声明集合的默认排序顺序

我希望这是你需要的

文档中的示例:

例如,要“替换”,请执行以下操作:

def airports = Airport.list(sort:'name')
你可以用

class Airport {
    …
    static mapping = {
        sort name: "desc"
    }
}
我回答的第一部分:


也许这不是最好的办法,但我也是这么做的 问题种类:我为我的类设置了一个映射,Searchable帮助了我 我去拿身份证。对于id,我使用getAll方法获取所有对象 (使用映射自动排序)


也许这不是最好的办法,但这就是我为同类问题所做的:我为我的类设置了一个映射,Searchable帮助我获取ID。对于ids,我使用getAll方法获取所有对象(使用映射自动排序)。@ArrrghGrails如何设置类的映射