grails - 如何将域约束注入(inject) Grails GSP?

标签 grails model-view-controller

我的域对象:

class Fizz {
    String buzz

    static constraints = {
        buzz (blank: false, inList: ['foo', 'bar'])
    }
}

我的 Controller :
class FizzController {
    def index() {
        render(
            view: "fizz",
            model: [
            ]
        )
    }
}

里面<body>我的 GSP 的标签(fizz.gsp):
<label for="buzz">Buzz:</label>
<g:select name="buzz" from="${Fizz.constraints.buzz.inList}" />

当我运行应用程序时,我得到一个呈现页面的运行时异常,说明:

Cannot get property 'constraints' on null object



所以Fizz为空,这告诉我我没有正确注入(inject) GSP。可能和我的空model有关数组(回到控​​制器中):
model: [
]

但由于我在这里访问一个静态属性,我不确定如何为模型注入(inject)一个静态值(如果这甚至是这里发生的事情的原因)。

最佳答案

您必须在 gsp 中导入该类:

 <%@ page import="com.someapp.Fizz" %>

关于grails - 如何将域约束注入(inject) Grails GSP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25116890/

相关文章:

Grails 2.4.0 - 错误 : ClassNotFoundException: grails.plugin.spock.test.GrailsS​​pecTestType

objective-c - 子类 UIView 或 UIViewController

objective-c - 关闭模态 ViewController 会在 iphone 周围移动主视图按钮

c# - 你调用的对象是空的? (异常错误~ASP.NET MVC)

model-view-controller - 在 MVC 中使用数据注释时,使用接口(interface)与 MetadataType 的优点和缺点

javascript - derby.js vs capsule/thoonk?

grails - 如何覆盖Grails 3 Controller 的重定向

grails - 将 org.apache.tomcat.jdbc.pool.DataSource 转换为 org.apache.commons.dbcp.BasicDataSource

grails - Grails 2.4.3错误GrailsContextLoaderListener java.lang.NoClassDefFoundError:org/apache/xml/security/Init

grails - 创建常规类