2016-05-13 8 views
1

こんにちは。 配列であるカスタムフィールド(チェックボックス)で問題を作成しようとしています。カスタムフィールドを作成できません。JIra Rest Api

ブラウザ(私はhttp://xxxxxxxx//rest/api/latest/issue/issueIdを打つ)での私のフィールドは次のように来る:私は言及する必要があります

{ 
"errorMessages": [], 
"errors": { 
"customfield_10703": "Operation value must be a string" 
} 
} 

"customfield_10703":["val1","val2","val3"], 

が、私はそれを投稿してみてください、私が得る問題を作成しますこのようにエンコードすると正常に問題を作成することができました

"customfield_10703":"{\"name\": \"Harware setup\"}", 

問題は、私が複数の価値を創造することができないということです。

ps。私はすでに管理ページをチェックしており、私のフィールドはデフォルト画面になっています。おかげさまで

+0

["val1"、 "val2"、 "val3"]は配列であり、キーと値のペアではありません。これは、Jiraがキーと値のペアとして受信するため、{"name": "whatever"}として送信すると機能します。 – Webomatik

+1

"customfield_10703"を試してみてください。(["val1"、 "val2"、 "val3"])。join()このように、カスタムフィールドには配列の代わりに文字列が送られます。 – Webomatik

答えて

1

あなたのプロジェクトの "createmeta"を見てください。 <your_jira_server>/rest/api/2/issue/createmeta?expand=projects.issuetypes.fields&projectIds=<project_id>

これは、あなたのフィールドのデータの期待されるフォーマットに関するより詳細な情報を提供するはずです。

"customfield_10600": { 
    "required": false, 
    "schema": { 
     "type": "array", 
     "items": "option", 
     "custom": "com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes", 
     "customId": 10600 
    }, 
    "name": "My Checkbox", 
    "key": "customfield_10600", 
    "hasDefaultValue": false, 
    "operations": [ 
     "add", 
     "set", 
     "remove" 
    ], 
    "allowedValues": [ 
     { 
      "self": "<your_jira_server>/rest/api/2/customFieldOption/10400", 
      "value": "apples", 
      "id": "10400" 
     }, 
     { 
      "self": "<your_jira_server>/rest/api/2/customFieldOption/10401", 
      "value": "bananas", 
      "id": "10401" 
     }, 
     { 
      "self": "<your_jira_server>/rest/api/2/customFieldOption/10402", 
      "value": "grapes", 
      "id": "10402" 
     }, 
     { 
      "self": "<your_jira_server>/rest/api/2/customFieldOption/10403", 
      "value": "kiwi", 
      "id": "10403" 
     }, 
     { 
      "self": "<your_jira_server>/rest/api/2/customFieldOption/10404", 
      "value": "limes", 
      "id": "10404" 
     }, 
     { 
      "self": "<your_jira_server>/rest/api/2/customFieldOption/10405", 
      "value": "oranges", 
      "id": "10405" 
     }, 
     { 
      "self": "<your_jira_server>/rest/api/2/customFieldOption/10406", 
      "value": "pears", 
      "id": "10406" 
     } 
    ] 
} 

あなたが戻ってJIRAにそれを送っている、それはoption型の配列を期待:チェックボックスを使用すると、一般的のようなものを見つけることができます。オプションについては、{"name": value}または{"id": id} JSONオブジェクトのいずれかを使用できるようにする必要があります(IDアプローチを使用したことがあります)。許可された値のリストから値またはIDを使用する必要があります。

複数設定する場合は、それらのオプションオブジェクトの配列を送信する必要があります。

関連する問題