`
热带翎羽
  • 浏览: 63162 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

基于Grails 2.3.4的多模板Scaffolding实现

阅读更多
从Grails 2.3开始,Scaffolding被作为一个独立的插件从Grails核心中独立出来,方便大家进行扩展和改造,一直都很希望通过定制多种类型模板来提升开发效率,所以进行了一下尝试,基本上已经可用了。

大致思路:

[list=1]
  • 运行install-templates安装模板,并在/src/templates/scaffolding目录下建立不同的模板目录,如: TreeView并放入定制的Controller.groovy以及*.gsp模板
  • 对命令行进行改造,在Scaffolding生成前指定模板名称:
  • 	generate-controller package.domain
    	generate-views package.domain
    ==>
    	generate-controller package.domain TreeView
    	generate-views package.domain TreeView
    

  • 对脚本_GrailsGenerate.groovy进行改造,解析通过argsMap传递的脚本名称
  • String template =argsMap['params'].size() >1 ? argsMap['params'][1] : "default"

    并通过generateForDomainClass方法将template赋值给:
    DefaultGrailsTemplateGenerator
  • 对AbstractGrailsTemplateGenerator类(Java)进行改造,增加:
  • 增加成员变量: public String templateName = "default";
    修改方法,接受模板参数:
    AbstractResource getTemplateResource(String template) throws IOException {
    修改获取模板的目录:
    String name = "src/templates/scaffolding/"+templateName+"/" + template;

    [/list]

    验证方法:

    generate-controller business.Domain TreeView
    	generate-views business.Domain TreeView


    验证生成的Controller以及Views均来自对于模板目录
    1
    1
    分享到:
    评论

    相关推荐

      Grails自定义scaffolding模板

      **Grails自定义scaffolding模板** 在Grails框架中,scaffolding是一种快速开发工具,它能够自动为数据模型生成基本的CRUD(创建、读取、更新、删除)操作界面,极大地提高了开发效率。然而,Grails的默认...

      grails-3.0.5-ga (2/2)

      Grails 是一个基于Groovy语言的开源Web应用框架,它构建于Java平台之上,旨在简化开发过程并提高生产力。在Grails 3.0.5版本中,引入了许多改进和新特性,使得这个版本成为一个重要的里程碑。以下是关于"grails-...

      richui-two:适用于 Grails 2.3.4 的 RichUI Grails 插件版本 > *

      日翠二号适用于 Grails 2.3.4 的 RichUI Grails 插件版本

      基于grails的货车进城审批

      基于Grails的在线平台则有效解决了这一问题,实现了无纸化办公,提高了工作效率。 系统的关键特性包括: 1. **在线报备**:用户可以通过网页填写车辆信息、行驶路线、预计进城时间等必要数据,一键提交审批申请,...

      基于Grails的办公自动化系统的研究与实现.rar

      基于Grails的办公自动化系统的研究与实现.rar

      基于Grails的办公自动化系统的研究与实现.pdf

      基于Grails的办公自动化系统的研究与实现.pdf

      基于grails开发的财政项目

      **基于Grails开发的财政项目**是一套利用Groovy on Grails框架构建的Web应用程序,主要目标是实现高效的财政管理。Grails是一个基于Java平台的开源框架,它结合了Ruby on Rails的敏捷开发理念和Java的强类型、静态...

      grails-maven-archetype-2.3.4.zip

      标题 "grails-maven-archetype-2.3.4.zip" 暗示这是一个Grails框架的Maven构建模板,版本为2.3.4。Grails是基于Groovy语言的开源Web应用框架,它简化了开发过程,提供了一种更加简洁、高效的编程模型。Maven则是一个...

      Grails 下拉框联动最优实现

      在IT行业中,Grails是一个基于Groovy语言的开源Web应用框架,它提供了高效的开发环境,使得开发者能够快速构建复杂的Web应用程序。"Grails下拉框联动最优实现"这个主题聚焦于如何在Grails应用中优雅地实现下拉框...

      grails脚手架2次优化

      Grails的脚手架基于GORM(Grails Object Relational Mapping)和Groovy模板引擎,通过解析Domain Class自动构建出Controller、View以及相应的模板文件。在运行时,这些文件负责处理数据的增删改查操作。了解这一工作...

      grails-用户手册

      Grails支持多语言环境,通过`messages.properties` 文件实现国际化,可以根据用户浏览器设置自动选择对应的语言版本。 总结来说,《Grails用户手册》涵盖了从项目创建到部署运行的全过程,包括Grails的基础概念、...

      grails 文档

      Grails 支持多语言环境,通过i18n资源文件,轻松实现应用的国际化和本地化。 11. **模板引擎与标签库** GSP(Groovy Server Pages)支持自定义标签库,使得视图层逻辑更加清晰,同时提供了内置的标签,如`g:form`...

      Grails Grails Grails

      2. **视图(View)**: 视图负责展示数据,通常使用GSP(Grails Server Pages)技术,这是一种结合了HTML和Groovy的模板语言,可以嵌入Groovy表达式和控制结构,实现动态内容的生成。 3. **控制器(Controller)**: ...

      grails使用freemarker.rar

      Grails集成FreeMarker后,开发者可以在模板文件中编写纯HTML,然后通过FreeMarker的语法插入动态数据,实现页面的动态渲染。 在标签中,“grails”是关键词,这意味着内容将主要围绕这个Java Web开发框架展开。...

      精通 Grails 使用 Ajax 实现多对多关系

      在IT领域,Grails是一个基于Groovy语言的Web应用程序框架,它简化了开发过程并提供了强大的功能。在Grails中,处理数据模型的关系是至关重要的,尤其是多对多(m:m)关系。本文将深入探讨如何使用Grails的GORM...

      grails-core源码

      Grails的GSP模板引擎允许开发者在页面上直接编写Groovy代码,结合HTML,实现动态页面生成。`TagLib`库提供了丰富的标签,简化了视图层的开发。 六、URL映射(URL Mappings) Grails的URL映射机制允许开发者定义...

      grails开发

      Grails是一种基于Java平台的开源Web应用框架,它利用Groovy语言的强大特性和简洁语法,为开发者提供了一种高效、灵活的开发环境。本篇文章将深入探讨Grails开发的基础知识,帮助初学者快速掌握Grails的精髓。 1. **...

      使用 Grails 快速开发 Web 应用程序

      Grails,一个基于Groovy动态语言的开源MVC框架,为Web开发提供了高效且简洁的解决方案。自2007年发布以来,Grails以其快速开发能力,降低了Web应用的复杂性,吸引了众多开发者。本文将引导读者深入理解Grails的基本...

      Grails权威指南.pdf

      - **Scaffolding**:Grails提供快速生成基础CRUD操作的模板代码,加速应用开发。 - **Plugins**:Grails插件系统允许开发者复用和扩展功能,如安全、缓存、邮件服务等。 - **配置管理**:通过`grails-app/conf/`...

      grails增删改查(初学者必备)

      Grails是一种基于Groovy语言的开源Web应用框架,它简化了Java开发流程,提供了MVC(Model-View-Controller)架构模式,适用于快速构建动态网站。对于初学者来说,掌握Grails的增删改查操作是学习Web开发的基础。在这...

    Global site tag (gtag.js) - Google Analytics