私はルビー/レールにはかなり新しいので、私に同行してください。オブジェクト内の値に基づいてREST APIによって返されたオブジェクトをグループ化するにはどうすればよいですか?
私はJIRA rest APIによって返された結果をビューに表示しようとしています。私はjira-ruby gemを使って簡単にそれを行うことができます。私が抱えている問題は、APIによって返されたオブジェクト内の特定のオブジェクト(この場合、 "issue"オブジェクト内の "components"フィールドオブジェクト)によって結果をグループ化することです。私はgroup_byとchunkをこれに使用しようとしましたが、基本的に私が望むものの逆を取得しています。どちらのメソッドも同じ結果を返します。私のコントローラで
私が持っている:私の見解で
@issues = @jira_client.Issue.all
を私は持っている:私は何で終わることはあり
<% @issues.chunk {|issue_comp| issue_comp.fields["components"]}.each do |comps, issues| %>
<h2>
<% comps.each do |comp| %>
<%= comp["name"] %>
<% end %>
</h2>
<ul>
<% issues.each do |issue| %>
<li><p><%= link_to issue.key, "http://localhost:2990/jira/browse/#{issue.key}" %> - <%= issue.summary %></p></li>
<% end %>
</ul>
<% end %>
:
COMPA COMPB
- IssueA
COMPC COMPD
- IssueB
コンパCOMPC COMPD
- IssueC
等
は私がしたいことは次のとおりです。
COMPA
- IssueA
- IssueC
COMPB
- IssueA
COMPC
- IssueB
- IssueC
COMPD
- IssueB
- IssueC
APIによって戻されたオブジェクトはかなり入り組んだオブジェクト(すなわちハッシュ内部の配列内にハッシュの巨大な配列)。だから、私はかなり深く、コンポーネント名を取得する必要があります。
私はこのように複雑ではないはずですが、必要以上に複雑にするという酷い習慣があります。私はここで間違って何をしていますか?
EDIT:上記の呼び出しで返される完全ダンプの要点を作成しました。 「コンポーネント」の配列に注目してください:私はあなたが戻ってのJiraから取得しているデータを見ていた
jira-ruby gem dump for all issues
サンプル入力と出力が必要です。 – Anthony
@Anthonyサンプル入力を追加しました。私は何かが欠けていない限り、望ましい出力はすでにそこにありますか?基本的には、コンポーネントに共通するすべての問題をコンポーネント名でグループ化したいと考えています。 –
私はJSONビューアでサンプルデータを見てきましたが、そこに問題があることを示すのに十分ではありません。生の形で見ることができるように、あなたが望む成果を生むデータを含めることができますか?もちろん、私的なデータを難読化するようにしてください。 –