我正在使用rails-ujs删除对象, 我的目标是在删除obj后隐藏该div和obj,我之前做过,但是这次我无法获取,我想我需要知道发生了什么。 正在查看:
*ngFor="let variablename of hack(arrayObjectname)"
关于destroy.js.erb:
<div class="employee_<%= employee.id %>"
<%= link_to 'Destroy', employee, method: :delete, remote: true } %>
</div
控制器:
$('div.each-employee-data').find('div.employee_<%= @employee.id %>').hide(); # if i change the id to employee.id i get another error
控制台错误:
format js
答案 0 :(得分:2)
一旦销毁了一条记录,就不再应该使用它,并且它不再具有id
。对于您的情况,您可以先保存ID,然后再在控制器中删除它:
@deleted_employee_id = @employee.id
@employee.destroy
...
并在js视图中...find('div.employee_<%= @deleted_employee_id %>').hide()...
PS。另外,通常的做法是使用“软删除”-在模型中有一个标志,指示记录是否被“删除”,并在destroy
操作中进行设置,而无需实际删除,如果用户希望删除记录,这将很有用“撤消”。