これは、Rails の質問というよりも AJAX の質問です。
にクリック ハンドラーを追加しli
(おそらく jQuery が最も簡単な方法です)、チャートの REST エンドポイントに AJAX 要求を送信する必要があります。設定によっては、これらのエンドポイントが探しているデータを JSON 形式で返してから、チャートの値を更新することをお勧めします (気が狂って d3js を使用してそれらを描画するかもしれません)。
REST エンドポイントがphysician_id
正しいデータを返すには、または何かが必要であり、どこかからこれを取得する必要があると思います。私は通常、要素のデータ属性として id を追加するだけです。
<li class="js-physician" data-id="<%= physician.id %>">Physician X</li>
リストを取得するために @physicians コレクションを反復処理していると仮定しています。
次に、jsに対して次のようなことを行います
$(document).on('click', '.js-physician', function(e) {
var physician_id = e.target.getAttribute('data-id');
params = { // this is your AJAX object
type: 'GET',
url: '/some_rest_url?physician_id=' + physician_id,
success: function(data) {
// update the charts with the returned data
},
error: function(jqXHR, textStatus, errorThrown) {
// handle error
}
};
$.ajax(params);
});
あとは、コールバック ハンドラを設定して、正しいデータを送信していることを確認するだけです。