1
我有一個窗體的頁面,它使用@Persist字段作爲窗體控件(文本框,單選按鈕等),這樣如果窗體被提交,數據保留在窗體if自定義驗證失敗。Tapestry5 @Persist默認值
從文檔中,「用@Persist標記的域可能沒有默認值(無論是內聯還是內部構造函數)」。不過,我需要爲某些表單元素(包括一些@Validate(「required」)選擇框)設置默認值。
實現此目的的方法是什麼?
感謝
我有一個窗體的頁面,它使用@Persist字段作爲窗體控件(文本框,單選按鈕等),這樣如果窗體被提交,數據保留在窗體if自定義驗證失敗。Tapestry5 @Persist默認值
從文檔中,「用@Persist標記的域可能沒有默認值(無論是內聯還是內部構造函數)」。不過,我需要爲某些表單元素(包括一些@Validate(「required」)選擇框)設置默認值。
實現此目的的方法是什麼?
感謝
首先,我不認爲你需要@Persist表單值,如掛毯將讓他們在你的驗證失敗提交。如果你這樣想設置的默認值,你可以在像@SetupRender這樣做:
@Porperty
@Persist
private String myValue;
@SetupRender
private void setup() {
if(myValue == null) {
myValue = "defaultVal";
}
}
或者你可以在一個空檢查吸氣做到這一點(這是使用事件時,一個有用的東西作爲@SetupRender不叫那裏):
@Persist
private String myValue;
public String getMyValue() {
if(myValue == null) {
myValue = "defaultVal";
}
return myValue;
}
感謝您的建議,我會嘗試一下,看看它是如何去。 – fabspro 2012-08-16 09:05:00
一個空檢查獲取工作完美,感謝您的帖子。 – fabspro 2012-08-17 09:34:51