1

我开始用挂毯开发,我有一个问题。实际上,我对挂毯中的表格和表格标题有疑问。我知道,如果您有一个用户类网格:

public class User {
    public String firstName;
    public String lastName;
}

<t:grid source="users" />

Tapestry 将生成类似于以下内容的 HTML:

<table>
    <thead>
        <tr>
            <th class="firstName">First Name</th>
            <th class="lastName">Last Name</th>
        </tr>
    </thead>
    <tbody>
        ...
        <tr>
            <td class="firstName">Traci</td>
            <td class="lastName">Lords</td>
        </tr>
        ...
    </tbody>
</table>

我的问题是 Tapestry 是如何设置标题的值的?

我的意思是挂毯如何从“firstName”类中设置值“First Name”?

我希望我的问题很清楚。

谢谢你。

4

2 回答 2

3

Tapestry 使用反射来获取属性的名称 (firstNamelastName),然后调用TapestryInternalUtils.toUserPresentable(String id)将其转换为更易于阅读的形式。

来自toUserPresentable()javadocs:

将字符串大写,并在每个大写字符(或大写字符序列)之前插入一个空格。因此“userId”变为“User Id”等。此外,将下划线转换为空格(并将以下单词大写),因此“user_id”也变为“User Id”。

于 2013-06-07T07:24:11.763 回答
0

在我的应用程序中,我实际上有一个 FindUsers.tml 文件和 FindUsers.java 关联类,最后我有一个 FindUsers.properties 文件,其中包含一些属性。

在我的 FindUsers.properties 我有 firstName-label=First Name 和 lastName-label=Last Name

并且在我的网格标题中选择了这些属性。

我认为“-label”使挂毯选择此属性作为标题。

于 2013-06-07T07:54:46.560 回答