如何使用此脚本在redmine中插入自定义字段?

时间:2014-06-16 17:18:55

标签: php xml api redmine custom-fields

我需要一个脚本来将新问题插入redmine。它最终会有更复杂的功能,但是现在我想要完成所有这些功能。我已经使用了他们网站上使用的示例:http://www.redmine.org/projects/redmine/wiki/Rest_api_with_php第二个使用ActiveResource。它运作良好,但如果我尝试添加自定义字段,它不起作用。我对PHP很陌生,但对于redmine和使用这种类型的东西是全新的。是否可以添加自定义字段?这是目前使用的代码:

<?php
require_once ('ActiveResource.php');

class Issue extends ActiveResource {
    var $site = 'http://username:password@website/';
    var $request_format = 'xml'; // REQUIRED!
}


// create a new issue
$issue = new Issue (array ('subject' => 'XML REST API2', 'project_id' => '6'));
$issue->save ();
echo $issue->id;

?>

我尝试在不使用脚本的情况下将新问题添加到我的项目中,这就是针对该问题的XML文件如何使用名为Ad ID的自定义字段:

<issue>
<id>17</id>
<project id="7" name="test 1"/>
<tracker id="1" name="Bug"/>
<status id="1" name="New"/>
<priority id="2" name="Normal"/>
<author id="1" name="Redmine Admin"/>
<subject>XML REST API2</subject>
<description/>
<start_date>2014-06-13</start_date>
<due_date/>
<done_ratio>0</done_ratio>
<estimated_hours/>
<custom_fields type="array">
  <custom_field id="1" name="Ad ID">
   <value>43434</value>
  </custom_field>
</custom_fields>
<created_on>2014-06-13T17:28:53Z</created_on>
<updated_on>2014-06-13T17:29:51Z</updated_on>
</issue>

是否有一种简单的方法可以在我的脚本中包含自定义字段?

编辑:我尝试了类似这样的事情并且它不起作用,它根本没有创建新问题。

$issue = new Issue (array ('subject' => 'XML REST API222', 'project_id' => '6',     'custom_fields'  => array(
    array(
        'id'    => 1,
        'name'  => 'Ad ID',
        'value' => '7427'
    ))));

1 个答案:

答案 0 :(得分:1)

我找到了自己问题的答案。对于那些遇到相同问题的人,以下是您包含自定义字段的方式:

'custom_fields' => array('@type' => "array",
            'custom_field' => array('@id' => '1',
                array('value' => '234'))
        )));