2

我有一个用于性别的 Tapestry PropertyModel。现在下拉列表只显示男性和女性,因为这些是我模型中唯一的值。我想添加一个“选择一个选项”选项。有没有一种标准方法可以做到这一点,而不必为我的模型添加假值?我还希望它足够聪明,知道如果该字段是必需的,他们不能将其设置为“选择一个选项”。

4

2 回答 2

2

在 Tapestry 5 上,您只需设置 blankLabel 属性。

在 Tapestry 4 上,更容易将该功能添加到您的 PropertyModel 或将其包装在 Brian 已经提到的 LabeledPropertySelectionModel 上(您可以在 JavaDoc 中查找您的 Tapestry 版本的该类)。

在 Tapestry 3 上,您必须将该功能添加到您的模型中,因为 LabeledPropertySelectionModel 是在版本 4 中引入的。

于 2008-11-12T16:01:19.593 回答
1

一种解决方案是使用 LabeledPropertySelectionModel 来包装真实模型,例如:

new LabeledPropertySelectionModel(new GenderModel(), "Choose an Option")

该类的 JavaDoc 说:

装饰基础 IPropertySelectionModel 添加初始属性。标签选项和初始属性的值是可配置的。

于 2008-11-04T05:18:04.683 回答