grails - jsp 表单标签是否有 Grails 等价物?

标签 grails gsp

我有一个(迄今为止)使用 JSP 作为 View 技术的简单 Spring 3 MVC Web 应用程序。在我走得太远之前,我正在考虑在 Grails 中重写它。

我喜欢 Spring 的一件事是 spring-form.tld 标签库中提供的“表单”标签。给定具有“myProperty”属性的模型属性“myFormModel”,这使我可以编写如下内容:-

<form:form commandName="myFormModel">
    <form:input path="myProperty" cssErrorClass="error"/>

这里的关键是 form:input 标记会自动完成对命令对象中属性的所有绑定(bind),因此(大致)在 HTML 中生成:-
<form>
    <input type="text" name="myProperty" value="xyz"/>

Spring MVC 会将表单参数绑定(bind)到类,并将对象传递给 Controller ​​。少出错。

(请原谅 JSP 和 HTML,它是指示性的,可能有点不正确)

据我了解普惠制表格标签: -
<g:form name="myForm" url="[controller:'myController', action:'foo']">
    <g:textField value="${myFormModel.myProperty}" class="${...blah to select error}"/>
  • 我无法指定“路径”属性:我必须手动生成名称。当路径变得复杂时(比如列表中某个项目的属性),这可能会变得多毛且嘈杂。
  • 我无法自动指定“正常”和“错误”CSS 类:我必须将 EL 放入 <input>类属性。乱!

  • 我必须承认我很惊讶 GSP(我认为)落后于 Spring,我认为这一切都是为了让显而易见的事情变得简单,让困难的事情成为可能。易于阅读/实现的表格似乎很容易。

    所以,我的问题: -
  • 我错过了什么吗?
  • 我应该(并且我可以)在我的 GSP 中使用 spring-form.tld 吗?

  • 这让我想知道我会遇到什么其他问题......

    最佳答案

    beanFields插件完成了 Spring 表单标签所做的一切以及更多。它使处理表单尽可能简洁。

    关于grails - jsp 表单标签是否有 Grails 等价物?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6857473/

    相关文章:

    html - html标签为空时如何隐藏

    rest - 什么是最简单、最少的 Backbone.js 代码来做 REST(假设服务器端是正确的)?

    Grails:从 Taglib 中获取当前 View 名称

    ajax - Grails中Ajax请求的每个用户 Controller 的单例实例?

    hibernate - Grails/GORM/Hibernate:引用未保存的 transient 实例的域实例的属性列表

    java - 停止 chalice 不是有效的候选人

    mysql - 将图像属性添加到 Grails 中的域类

    grails - sdk grails 和lazybones init fatal error

    exception - 实时 Grails Web 应用程序中的邮件异常日志

    html - 防止Grails输入标签添加id属性