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如何设置类的映射