快速业务通道

精通Grails: 了解插件 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-16
将这些插件复制到您的项目并进行解压缩,如清单 9 所示:

清单 9. 向您的项目中添加插件

$ grails install-plugin searchable   //download core and default plugin lists   //download requested plugin   // continued...   [copy] Copying 1 file to /Users/sdavis/.grails/1.1.1/projects/blogito/plugins   Installing plug-in searchable-0.5.5   [mkdir] Created dir:     /Users/sdavis/.grails/1.1.1/projects/blogito/plugins/searchable-0.5.5   [unzip] Expanding:     /Users/sdavis/.grails/1.1.1/plugins/grails-searchable-0.5.5.zip into     /Users/sdavis/.grails/1.1.1/projects/blogito/plugins/searchable-0.5.5 >

精通Grails: 了解插件(5)

时间:2011-07-25 IBM Scott Davis

更深一步研究

从 Grails 1.1 的发布说明中可以找到关于此插件基础架构的更多信息。从中可以了解如何安装全局 性的插件(以便所创建的每个新的项目都会自动包含这些特定的插件)、如何向列表中添加替代插件存储 库、如何限制插件只在特定环境中运行或是只针对特定的 Grails 命令行脚本运行,等等。

不过,在您进行太过深入的研究之前,请务必确保这对您来说具有实际意义。在 application.properties 内的行对应于 .grails 内的 project 目录中的解压缩目录。这就意味着要想 卸载一个插件,可以键入 grails uninstall-plugin myplugin ,或者干脆将这一行从 application.properties 中删除并手动地从 .grails 的 project 目录中将这个目录删除。

插件以简单的 ZIP 文件来回传递,知晓这一点非常重要。在下一篇文章中,我将向您展示如何创建您 自已的插件并通过一个本地 ZIP 文件(grails install-plugin myplugin /local/path/to/myplugin.zip)来安装这个插件。您甚至可以通过一个远程 URL — grails install- plugin myplugin http://somewhere.com/myplugin.zip 来安装这个插件。

对 Searchable 插件的探讨

知道了 Searchable 插件安装的位置(.grails/1.1.1/projects/blogito/plugins/searchable-0.5.5 )后,我们就可以对它进行探讨了。这个目录结构(如图 3 所示)应该看上去有点眼熟 — 插件和应用 程序共享同样的基础布局:

图 3. 目录结构

SearchableController 恰恰处于我们想要的位置:grails-app/controllers。在一个文件编辑器中打 开这个文件。清单 10 显示了部分源代码:

清单 10. SearchableController

import  org.compass.core.engine.SearchEngineQueryParseException class SearchableController {   def searchableService   def index = {    if (!params.q?.trim()) {     return [:]    }    try {     return [searchResult: searchableService.search(params.q, params)]    } catch (SearchEngineQueryParseException ex) {     return [parseException: true]    }   }   //snip }

精通Grails: 了解插件(6)

时间:2011-07-25 IBM Scott Davis

如您所见,SearchableService 在类被声明后被注入到此控制器。这个熟悉的 index 动作就是默认的 目标。如果没有传递进 q 参数,就会将一个空的 hashmap 返回给 grails- app/views/searchable/index.gsp。基于视图中的逻辑,它将显示一个空白页。

在 index.gsp 的第 100 行左右的位置,应该能够找到一个表单,它可设置 q 参数及递归地将自身提 交回 index 动作。清单 11 显示了这个表单:

清单 11. index.gsp 中的 searchable 表单

<g:form url=''[controller:  "searchable", action: "index"]'

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号