【问题标题】:grails default valuesgrails 默认值
【发布时间】:2011-01-21 10:10:30
【问题描述】:

我有一个用 grails 编写的应用程序。 我想添加一个具有默认初始值的新域类。 这些值应显示为默认值初始值 在创建视图下。
我的意思是,生成的 inout 字段标签应该有这个值 一个属性。

类(简化)如下所示:

class Whatever{
static constraints = {
    myString(blank:false, nullable:false)
     }
    String myString = "hallo"

生成的视图如下所示:

...
<td valign="top" class="value ${hasErrors(bean: whatEverInstance, field: 'myString', 'errors')}">
   <g:textField name="serviceReview" value="${fieldValue(bean: whatEverInstance, field: 'myString')}" />
</td>

由于某些未知原因,渲染页面的源代码如下所示:

<td valign="top" class="value ">
    <input type="text" name="myString" value="" id="myString" />
</td>

我期待 value="hallo"
我的意思是:

<td valign="top" class="value ">
    <input type="text" name="myString" value="hallo" id="myString" />
</td>

我做错了什么?

提前致谢,

路易斯

编辑:

我的创建方法如下:

 def create = {
        def whateverInstance        = new Whatever()
        whateverInstance.properties = params

        return [whateverInstance: whateverInstance]
    }               

但是创建方法是在表单被填写之后调用的。

【问题讨论】:

    标签: grails default-value


    【解决方案1】:
     int varm
    
     static mapping = {       
       table 'Test55'
       id column: "kid", name:"kid"
       version false 
       varm column: 'varm', name: 'varm', sqlType: 'numeric(1) default 1'
    } 
    

    这行得通

    【讨论】:

    • 谢谢!这对我很有帮助。
    【解决方案2】:

    您是在控制器的create 设置操作中设置了whatEverInstance bean 吗?

    def create = {
        [whateverInstance: new Whatever()]
    }
    

    您可以使用以下命令测试 gsp 中whateverInstance 的值:

    ${whateverInstance}

    【讨论】:

    • 谢谢!我发现了错误。如您所想,它在控制器上。
    猜你喜欢
    • 2015-05-22
    • 1970-01-01
    • 1970-01-01
    • 2012-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多