Ben sol tarafta, Projeler, Bloglar, vb. Gibi linkleri olan bir kenar çubuğu olan bir kullanıcının gösterge tablosu sayfası var. daha sonra ana alanda, sayfaları yenilemek zorunda kalmadan projelerin görünümü yüklenecekti (proje bir proje mermi listesi olurdu). Bunu AJAX ile yapmaya çalışıyorum, ama işler çalışmıyor.AJAX çağrı Kısmi render to Rails 3
Çalışması gerektiğini düşündüğüm şekilde.
match '/dash' => 'users#show'
Ve sonra, show
eylem users_controller.rb
yılında denir: /dash
kullanıcıları # yönlendirmek üzere yapılandırıldığı show.html.erb
<%= link_to 'Projects', '/dash', remote: true %>
kenar çubuğu linke tıkladığında böyle config/routes.rb
dosyada göstermek denetleyicisi: show.js.erb
yürütüldüğü zaman, gerçekleştirilir. Benim show.js.erb
dosya bu bir hattı vardır:
$('#ajax').html("<%= escape_javascript(render(:partial => 'projects/index')).html_safe %>");
Ve de #ajax div değiştirmek gerekiyordu benim show.html.erb
:
<div id="ajax">
<%= render :template => 'projects/index' %>
</div>
app/views/projects/index.html.rb
@projects alır ve böyle bir liste verir:
<% @projects.each do |project| %>
<p><%= project.name %></p>
<% end %>
Açıkçası, bir şeyler yapıyorum çünkü bu çalışmıyor. Neyi yanlış yapıyorum? Başka yer değiştirmek zorunda olduğum bir kod var mı? Rails 3.2.13 üzerindeyim, bu yüzden ve //=jquery_ujs
app/assets/javascripts/application.js
altındaki satırlar gerekli jQuery ve AJAX işlevlerini almalıydı.