perl – bugzilla:如何在高级搜索中创建自定义字段以搜索通过admin创建的自定义字段

我知道Bugzilla 3.0及更高版本支持为您的bug创建自定义字段,这可以通过管理员完成.

我的问题是,是否有任何方法可以在高级搜索中创建自定义字段,以便能够搜索具有该自定义字段值的错误.

我知道当前bugzilla支持的解决方案是使用高级搜索页面上的自定义搜索下的布尔搜索,但我想创建自己的自定义字段.

到目前为止我所做的当前修改都是通过自定义文件夹下的form.tmpl文件进行的,该文件夹是默认文件夹的副本.我设法使用默认字段,但没有运气创建自定义字段.

资料来源:http://www.bugzilla.org/docs/2.18/html/cust-templates.html

我找到了另一个来源:http://mozilla.6506.n7.nabble.com/Adding-Custom-Field-drop-downs-to-Advanced-Search-Page-td80291.html

这有点指导我理解如何解决问题.截至目前,我似乎需要转到bugzilla文件夹下的search.pm文件,该文件夹负责生成搜索报告的查询.这在文件本身和https://wiki.mozilla.org/Bugzilla:Search.pm源中描述.

最佳答案
是的,您可以通过Search.pm文件管理自定义bugzilla字段,该文件位于Bugzilla文件夹中.

为此,您需要将自定义选择字段推送到合法字段数组并循环遍历,

my @legal_fields = (<enter whatever legal fields, you have with the comma seperator>);

push(@legal_fields, map { $_->name } @select_fields);

foreach my $field ($params->param()) {
    if (lsearch(\@legal_fields, $field) != -1) {
        push(@specialchart, [$field, "anyexact",
                         join(',', $params->param($field))]);
    }
}

select_fields数组应包含您的自定义字段.和legal_fields包含您的法律字段.

转载注明原文:perl – bugzilla:如何在高级搜索中创建自定义字段以搜索通过admin创建的自定义字段 - 代码日志