拉力赛自定义应用程序 - 获取子元素

时间:2016-12-16 10:44:35

标签: rally ca

我想为Rally创建一个自定义应用程序来显示测试用例详细信息。有一个字段名称' LastResult'在测试用例里面有一个名为' c_blockedReason'。

的字段

如何显示&#c; c_blockedReason'在同一个自定义应用上,而不是将其作为参考。

我到目前为止编写的代码,

    <!DOCTYPE html>
    <html>
    <head>
    <title>Grid Example</title>

    <script type="text/javascript" src="/apps/2.1/sdk.js"></script>

    <script type="text/javascript">

        Rally.onReady(function() {
            Ext.define('Rally.example.SimpleGrid', {
                extend: 'Rally.app.App',
                componentCls: 'app',

                launch: function() {
                    this.add({
                        xtype: 'rallygrid',
                        columnCfgs: [
                            'FormattedID',
                            'Name',
                            'Owner','Method','Type',
                            'LastVerdict',
                            'LastResult',
                        ],
                        context: this.getContext(),
                        enableEditing: false,
                        showRowActionsColumn: false,
                        storeConfig: {
                            model: 'testcase'
                        }
                    });
                }
            });


            Rally.launchApp('Rally.example.SimpleGrid', {
              name: 'Grid Example'
            });
        });
    </script>

    <style type="text/css">

    </style>
</head>
<body></body>
</html>

1 个答案:

答案 0 :(得分:0)

这个是两个人。首先,您需要通过向storeConfig添加提取来获取该c_BlockedReason字段:

storeConfig: {
    model: 'testcase',
    fetch: ['c_BlockedReason']
}

接下来,您需要将自定义渲染器添加到您的columnCfgs集合中:

{
    text: 'Blocked Reason',
    dataIndex: 'c_BlockedReason',
    renderer: function(value, metaData, record) {
        var verdict = record.get('LastVerdict');
        return (verdict && verdict.c_BlockedReason) || '--';
    }
}