show.html.erb
파일의 탭/링크가 두 개있는 nav 메뉴가 있습니다. UsersController.rb
에 탭으로 다른 부분을 렌더링하려면 ajax를 사용하고 싶습니다.템플릿 오류 - 레일의 아약스 3
show.html.erb
에는 콘텐츠를 표시하려는 profile-data
이라는 div가 있습니다. 그래서 나는 같은 것을 할 :
링크 구조 :
<li><%= link_to "College friends", college_friends_path, :remote => true %></li> <li><%= link_to "Highschool friends", highschool_friends_path, :remote => true %></li>
내가 경로 정의 :
match "college_friends" => "users#college_friends", :as => "college_friends"
match "highschool_friends" => "users#highschool_friends, :as => "highschool_friends"
을 그리고 내 UserController.rb 필요한에게로 정의 방법 :
* college_friends.js.erb *
$('#profile-data').html("<%= escape_javascript(render(:partial => 'college_friends')) %>");
* highschool_friends.js.erb *
$('#profile-data').html("<%= escape_javascript(render(:partial => 'highschool_friends')) %>");
부분 코드 : 44,
마지막 것은 우리는 JS 파일이 : _college_friends.html.erb
Started GET "/universitet_friends" for 127.0.0.1 at 2012-07-29 01:53:39 +0200
Processing by UsersController#universitet_friends as JS
Rendered users/_universitet_friends.html.erb (1.6ms)
Rendered users/universitet_friends.js.erb (3.1ms)
Completed 500 Internal Server Error in 7ms
ActionView::Template::Error (undefined method `friends' for nil:NilClass):
1: <% groups = @user.friends.group_by(&:college_name) %>
2: <% sorted_groups = groups.sort_by{|key, values| values.count}.reverse %>
3: <% sorted_groups.each do |collegename, friends| %>
4: <% next if collegename.blank? %>
app/views/users/_universitet_friends.html.erb:1:in `_app_views_users__universitet_friends_html_erb___1983680250475155079_70236040373720'
app/views/users/universitet_friends.js.erb:1:in `_app_views_users_universitet_friends_js_erb__1317362850668628869_70236044930260'
app/controllers/users_controller.rb:19:in `universitet_friends
어떤 도움을 주시면 감사하겠습니다 : 나는이 링크를 클릭하고 콘솔에서이 오류를 얻을 때 1,363,210
<% groups = @user.friends.group_by(&:college_name) %>
<% sorted_groups = groups.sort_by{|key, values| values.count}.reverse %>
<% sorted_groups.each do |collegename, friends| %>
<% next if collegename.blank? %>
<div class="contentbox">
<div class="box-header">
<h3><%= collegename %></h3>
<div class="meta-info">
<p><i class="icon-map-marker"></i> Malmö</p>
<p><i class="icon-user"></i><span class="count"> <%= friends.count %></span> vänner</p>
</div>
</div>
<ul class="friends-list">
<% friends.map do |friend| %>
<li><%= image_tag(friend.image) %>
<% end %>
</ul>
</div>
<% end %>
아무런 반응이 없습니다.
내 사례를 보여 주실 수 있습니까? – SHUMAcupcake