2017-06-22 63 views
-1

有一類獲取字段的值

class Real { 

    static constraints = { 
     param_name() 
     param_descr() 
     param_type(inList: ["val", 
         "symbol", 
         "string", 
         "Boolean", 
     ]) 
    } 

    String param_name 
    String param_descr 
    String param_type 
} 

我能得到param_type值?

如果是這樣,怎麼樣?

我需要isList值進一步工作

好,或可它在某種程度上可以做不同?

+0

我想你可以使用Enum的。 http://grails.asia/groovy-enum-examples – Biswas

回答

1

我相信Grails的3,你會訪問該值列表如下:

Real.getConstrainedProperties().param_type.inList 
Grails中2

這只是

Real.constraints.param_type.inList 

這將返回,你可以在使用值列表一個<g:select>例如

<g:select id="theType" from="${Real.getConstrainedProperties().param_type.inList}"/> 
0

朋友,我想你誤解了Grails或Groovy中的限制。

「約束爲Grails提供聲明式DSL以定義驗證規則,模式生成和CRUD生成元數據」。 例如,考慮這些約束:

類用戶{ ...

static constraints = { 
    login size: 5..15, blank: false, unique: true 
    password size: 5..15, blank: false 
    email email: true, blank: false 
    age min: 18 
} 

}

使用INLIST的是: 用於驗證值是一個範圍或限制集合中值。 例如:name(inList:[「Joe」,「Fred」,「Bob」])

在您的場景中,驗證您在inList中給出的約束值集合中的param_type值。

有關詳細信息,請參考以下的Grails官方頁面 https://docs.grails.org/latest/ref/Constraints/Usage.html

如果我誤解你的問題請評論我。