Tapestry SelectModelFactory 多个 LabelProperties

Tapestry SelectModelFactory Multiple LabelProperties

我在 Tapestry 表单中有一个 select 下拉列表,该表单由对象通过 SelectModelFactory 填充。我目前正在向客户端显示对象的名字,但我想同时显示名字和姓氏,而且我有一段时间想弄清楚如何添加另一个 labelProperty。我的模型是根据以下代码创建的:

List<Person> persons = personFinderService.findPersons();
personsModel = selectModelFactory.create(persons, "firstName");

我尝试了几种方法:

(persons, "firstName" + "lastName")
(persons, "firstName" & "lastName")
(persons, "firstName" && "lastName")
(persons, "firstName + lastName")
(persons, "firstName & lastName")
(persons, "firstName && lastName")
(persons, "firstName", "lastName")

但是我无法同时显示这两个名字。任何帮助将非常感激。 Tapestry 使用不多,因此没有很多在线支持。

您可以在 Person class:

中创建一个新方法
public class Person {
    ...
    public String getFullName() {
        return firstName + " " + lastName;
    }
}

然后是personsModel = selectModelFactory.create(persons, "fullName");.

或直接使用内部 SelectModelImplOptionModelImpl