我想使用可搜索插件在可串行化的领域。
现在的问题是,如果我添加以下代码,它就不会编译:
类产品实现可序列化的{
静态瞬变=“可搜索”
静态搜索=真
我不知道这个可搜索的插件是如何工作的。此外,我在域产品中也有hasMany和belongsTo关系。其他的也是可序列化的域。
所以请告诉我如何才能搜索到这个域名。
发布于 2012-03-29 22:08:51
首先,您不需要瞬态定义。这就是你需要开始的全部工作:
static searchable = true您可以通过"http://localhost:8080/YOUR-APP-NAME-HERE/searchable"“进行测试。如果您确实添加了任何产品,您可以使用该productName搜索域中的一个简单字段(例如字符串productName字段)。
一旦确定它正在工作,就可以将搜索字段放在表单上,并向Product添加一些自定义方法,以使用搜索功能:
//search form
<form controller="product" action="searchForProducts" >
<g:textField name="query" />
<input type="submit" value="search" />
</form>
//ProductController
def searchForProducts = {
if(params.query) {
def products = Product.search(params.query).results
return [productInstanceList: products]
}
}就您的hasMany引用而言,只要它们也是可搜索的,您就应该能够在搜索中包含这些引用。我还没有必要这么做,所以我对细节并不乐观。
https://stackoverflow.com/questions/9926811
复制相似问题