呈現集合中的部分我有下面的代碼,我想通過javascript來呈現這(通過AJAX雷分頁):軌道4通過escape_javascript
<div id="paginator-jobs-top" class="text-center">
<%= paginate @jobs, remote: true,
theme: 'twitter-bootstrap-3',
param_name: 'jobs',
params: { tab: 'jobs' },
pagination_class: 'pagination-small pagination-centered' %>
</div>
<div id="jobs">
<%= render partial: 'jobs/job_panel', collection: @jobs, as: :job %>
</div>
<div id="paginator-jobs-bottom" class="text-center">
<%= paginate @jobs, remote: true,
theme: 'twitter-bootstrap-3',
param_name: 'jobs',
params: { tab: 'jobs' },
pagination_class: 'pagination-small pagination-centered' %>
</div>
而我這個js.erb代碼嘗試,但它根本不工作:
$('#paginator-jobs-top').html('<%= escape_javascript(paginate(@jobs,
remote: true,
theme: "twitter-bootstrap-3",
param_name: "jobs",
params: { tab: "jobs" },
pagination_class: "pagination-small pagination-centered").to_s) %>');
$('#jobs').html('<%= escape_javascript(render partial: "jobs/job_panel",
collection: @jobs,
as: :job) %>');
我試過其他的變化,但沒有一個工作。如果有人知道如何在js.erb方法中渲染上面的代碼,我很樂意聽到!
我從上面得到的錯誤是:
ArgumentError - wrong number of arguments (0 for 1)
當我嘗試它在js.erb片段稍微不同的線(沒有「作業:J」)我得到:
NameError - undefined local variable or method `job' for #<#<Class:0x
****根據對Blelump的建議,下面我改變了我的代碼,這***
<div id="jobs">
<%= render partial: "jobs/job_panel", collection: @jobs, as: :job %>
</div>
未經AJAX的偉大工程(這是實際上是在Rails中渲染集合偏好的正確方法,之前我的錯誤)。然而,當我調整js.erb文件到這一點,我仍然得到一個錯誤:
$('#jobs').html('<%= escape_javascript(render partial: "jobs/job_panel",
collection: @jobs,
as: :job) %>');
的錯誤是從雷再次:
NoMethodError - undefined method `current_page' for nil:NilClass:
kaminari (0.16.1) lib/kaminari/helpers/action_view_extension.rb:18:in `paginate'
你有什麼錯誤嗎? – 2014-10-27 16:04:26
一個錯誤我得到的是: NameError - 未定義的局部變量或方法'爲#作業」 <#<類別:0x0000010a2d4208>:0x00000108af5330> 一個不同的錯誤與另一種嘗試: 引發ArgumentError - 錯誤的參數數目(0 1) – 2014-10-27 16:07:07