当我使用AttributeDropdown创建一个应用程序,并尝试在调试中测试它时,我收到一个错误(属性下拉:发生查询错误)并且没有显示下拉列表,但是如果我使用rake来组合它,然后将组合的应用程序放入Rally中的自定义页面,它完美无误地运行。
我使用演示应用(https://developer.help.rallydev.com/attribute-dropdown)尝试了这个问题,它有同样的问题。
在JS文件中我有:
function dropdownChanged(dropdown, eventArgs) {
var selectedItem = eventArgs.item;
var selectedValue = eventArgs.value;
}
function onLoad() {
var rallyDataSource = new rally.sdk.data.RallyDataSource('__WORKSPACE_OID__',
'__PROJECT_OID__',
'__PROJECT_SCOPING_UP__',
'__PROJECT_SCOPING_DOWN__');
var config = {
type : "defect",
attribute : "owner"
};
var attributeDropdown = new rally.sdk.ui.AttributeDropdown(config, rallyDataSource);
attributeDropdown.display("aDiv", dropdownChanged);
}
rally.addOnLoad(onLoad);
然后在自动创建的普通template.html文件中,我添加了“aDiv”。 - 现在,如果我打开模板,我会收到这些错误,但是如果我进行组合,然后将App.html粘贴到Rally中的自定义HTML应用程序中,我就不会收到错误。
导致错误的行是:
attributeDropdown.display("aDiv", dropdownChanged);
使用带有AttributeDropdown的调试模式是否存在问题? ..或者还有其他事情发生在这里吗?
答案 0 :(得分:1)
这似乎是网络服务的一个缺陷。由于在外部运行时,挂起变量 __ WORKSPACE_OID __ 未被替换且WSAPI无法处理默认值,因此失败了。它可以在面板内运行,因为hangman变量将正确解析为当前工作区。
这是一个无赖,因为从外部开发肯定是首选方式。在此期间,您可以通过将工作区的oid实际传递给RallyDataSource来解决它:
var rallyDataSource = new rally.sdk.data.RallyDataSource(12345, 23456, true, false);
您应该可以通过检查在Rally中自定义html面板中运行的应用的页面来源来找到这些oid。
我会提交一个缺陷,以确保它得到解决,并在修复后发回。