精通 Grails: 了解插件
2009-10-26 00:00:00 来源:WEB开发网我鼓励您更深入地去探索 Searchable 插件的奥秘。请见 grails-app/services/SearchableService.groovy。注意到 lib 目录中已经包含了 Lucene 和 Compass 的 JAR 文件。到 src/java 和 src/groovy 目录去看看所有支持的类。再回顾一下 tests 目录中的 GroovyTestCase。一个典型 Grails 应用程序的所有部分都在这个插件里。
每当安装一个新插件,都要留意一下它的实现。这将有助于您识别所有可移动部分、了解它们是如何组合起来发挥作用的,并且 — 最重要的是 — 给您启示,教您如何能更好地将它们融入到您的应用程序中。接下来的一节,您将看到如何将搜索功能从默认实现转到您自已的定制组件中。
将搜索更深入地并入到 Blogito
下面教您如何添加对 Entries 的搜索。首先,在一个文本编辑器内打开 grails-app/controllers/EntryController.groovy。添加一个简单的 search 动作,如清单 13 所示。(别忘了要允许未经身份验证的用户通过向 beforeInterceptor 添加 search 动作来进行博客条目的搜索。)
清单 13. 添加 search 动作class EntryController {
def beforeInterceptor =
[action:this.&auth, except:["index", "list", "show", "atom", "search"]]
def search = {
render Entry.search(params.q, params)
}
//snip
}
正如在前一章节所展示的那样,SearchableService 非常适合用来进行跨所有域类的站点级别的搜索。但 Searchable 插件也可以在您个人的域类上做一些元编程。正像 Grails 可以动态地添加 list()、get() 和 findBy() 方法一样,Searchable 插件可以添加一个 search() 方法。
- ››精通Photoshop之通道详解
- ››了解Windows Mobile文件结构
- ››了解 IBM Smart Business Development and Test o...
- ››了解 Apache Click:使用轻量模型快速编写 Web 应...
- ››了解 IBM Data Studio Version 2 软件打包方式
- ››了解微软Office 2010数字签名的新特性
- ››了解Sybase IQ服务剑桥天文观测台
- ››了解 Eclipse 中的 JFace 数据绑定,第 1 部分: 数...
- ››了解 Eclipse 中的 JFace 数据绑定,第 2 部分: 绑...
- ››了解 Eclipse 中的 JFace 数据绑定,第 3 部分: 使...
- ››精通 Grails: 使用 Grails 进行单元测试(单元测试...
- ››了解 Tapestry,第 1 部分:启动 Tapestry 并在 J...
更多精彩
赞助商链接