[英]grails command object and fields with prefixes
我正在使用grails 1.3.7,情況就是這樣...
具有巨大的形式,其字段帶有幾個不同的前綴 (后來用於數據綁定),並試圖通過命令對象進行驗證...但是,前綴中使用的可愛的DOT給我帶來了麻煩,並且無法正確映射名稱在命令對象中...有什么建議嗎?
表單中的字段像這樣的字段:
<input name="dealer.name" value="${dealer.name}" type="text">
對於命令對象:
class somethingCommand {
String name
Map dealer = [:]
static constraints = {
dealer validator: {
val, obj ->
obj.properties["name"] != ""
}
}
}
如果...。我們以另一種方式看待它並在傳遞給命令對象之前映射參數...我應該如何在不使用grails magic的情況下將參數傳遞給命令對象?!?!?!
n
支持帶有命令對象前綴的數據綁定屬性:
對於命令:
class DealerCommand {
String name
Map dealer = [:]
}
名為“ name”,“ dealer”,“ dealer.name”和“ dealer.dealer”的屬性將正確綁定到命令對象。
http://grails.org/doc/2.3.x/guide/single.html#commandObjects
您可以通過以下方式在控制器中獲取“經銷商”地圖
def dealerMap = params["dealer"]
然后手動創建經銷商命令,將地圖內容綁定到該命令。
def dealerCommand = new DealerCommand()
bindData(dealerCommand , dealerMap)
然后您可以像平常一樣使用命令對象的驗證
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.