[英]Using Ajax to render a partial in rails
这篇文章是找出为什么ajax调用在我的项目中不起作用的最后机会。 希望你们能帮到我。
我唯一想要的是通过单击“ link_to”按钮将部分“订单”呈现给我的管理页面。
这就是我在控制器中称为“主”的内容:
class MastersController < ApplicationController
before_action :logged_in_master, only: [:index, :edit, :update, :destroy]
before_action :correct_master, only: [:edit, :update]
def administration
@orders = Order.all
respond_to do |format|
format.html
format.json
format.js
end
end
我的视图称为“ administration.html.erb”:
<% provide(:title, "Administration") %>
<h1>Manage your site</h1>
<ul class="nav nav-pills">
<li role="presentation" class="active"><%= link_to "Masters", masters_path %></li>
<li role="presentation"><%= link_to "Orders", orders_path, action:remote => true %></li>
<li role="presentation"><%= link_to "Settings", edit_master_path(current_master) %></li>
<li role="presentation"><%= link_to "Services", manage_path %></li>
<li style="float:right;" role="presentation"><%= link_to "Log out", logout_path, method: "delete" %></li>
</ul>
<div class="activity">
</div>
我的视图的js格式称为“ administration.js.erb”:
var orders_inject = $("<%= escape_javascript(render (:partial => 'orders')) %>");
$('.activity').html(orders_inject);
and my partial itself called "orders":
<table class="table table-hover table-striped">
<thead>
<tr>
<th>Name</th>
<th>Field</th>
<th>Description</th>
<th>Address</th>
<th>Time</th>
<th>Mobile number</th>
<th>Photo</th>
<th>Master</th>
</tr>
</thead>
<tbody>
<% @orders.each do |order| %>
<tr class="active">
<td><%= order.name %></td>
<td><%= order.field %></td>
<td><%= order.description %></td>
<td><%= order.address %></td>
<td><%= order.datetime %></td>
<td><%= order.mobile_number %></td>
<td><%= order.photo %></td>
<td><%= order.master_id %></td>
<td><%= link_to 'Add master', edit_order_path(order), class: 'btn btn-info btn-sm' %></td>
<td><%= link_to 'Delete order', order, method: :delete, data: { confirm: 'Are you sure?' }, class: 'btn btn-danger btn-xs' %>
</td>
</tr>
<% end %>
</tbody>
</table>
因此,请帮我弄清楚,因为我已经阅读了差不多一个星期的各种相关文章,但仍然没有针对该错误的解决方案。 非常感谢任何评论和建议。 提前致谢!
$('.activity').html("<%= j raw render 'orders' %>")
“订单”位于app / views / masters / orders.html.erb中的位置
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.