2015-06-14 67 views
0

我有一個來自Rails應用的javascript圖形。當我點擊圖中的一個圓圈時,它會告訴我它表示的用戶名是什麼。然後,我希望應用程序從數據庫表中找到與該用戶名相關的更多信息。 我已經很遠了,但似乎無法看到局部結果。如何讓我顯示部分的json

控制器正確觸發查詢數據庫響應的JavaScript的onclick

def show 
    @user = User.find_by name: params[:name] 
    puts @user 
    render json: @user 
end 

如何我然後把JSON這部分_profile.html.erb

<div>Hi I'm a partial</div> 
<div class='profile-content'></div> 

和然後在頁面中顯示部分名爲graph/data.html.erb

並顯示

+0

jbuilder內置於rails:https://github.com/rails/jbuilder – rkamun1

+0

如何更改控制器指令以確保json顯示在部分內容中? –

+0

對不起,無視上面的評論。見下文。 – rkamun1

回答

1

您可以使用show.js.html。所以:

def show 
    @user = User.find_by name: params[:name] 
    puts @user 
    render json: @user 
end 

變爲:

def show 
@user = User.find_by name: params[:name] 
end 

由於您的請求是JS請求,然後它會自動詢問'show.js.html」。在這個文件中:

$('.profile-content').inner_html("<%= @user.to_json %>"); 

我會做的是創建一個部分:_user_details在這裏鋪陳@user我想怎麼它出現,然後填充`.profile_content``與....所以:

_user_details.html.slim

.user-details 
= @user.name 
= @user.phone_number 

然後調用部分:

$('.profile-content').inner_html("<%= escape_javascript(render(:partial => 'user_details')) %>");