我從某個時候開始學習Ajax,這很棒,所以我並不是真正的專家。所以我需要一些建議。用AJAX改變一個部分
我目前正在建立一個組系統。我有一個選項卡系統來區分你自己的組和其他組。我想要知道的是,腳本是一個ajax,用於將我的部分組從一個標籤發送到另一個標籤。例如,當用戶退出一個組時,它將會消失,我的組將出現在其他選項卡中。
我成功的第一步,但我真的不知道如何可以將表單發送到其他選項卡。 正如你所看到的那樣,我試着發送id,但是沒有包含部分形式。所以這只是渲染我的小組的ID。 任何建議,包括部分(_group2.html.erb)?
我的代碼:
指數(組):
<div class="panel-body">
<div class="tab-content">
<div class="tab-pane fade in active" id="tab1default_group" style="padding:0px;">
<div class="group_area">
<% @my_groups.each do |group| %>
<div class="group_box<%=group.id%>">
<%= render 'group', group: group %>
</div>
<% end %>
</div>
</div>
<div class="tab-pane fade in" id="tab2default_group" style="padding:0px;">
<div class="group_area2">
<% @groups_out.each do |group| %>
<div class="group_box2<%=group.id%>">
<%= render 'group2', group: group %>
</div>
<% end %>
</div>
</div>
</div>
</div>
rem_req.js.erb(組):
$(".group_box<%[email protected]%>").fadeOut();
$(".group_area2").append('<%= render partial: @group2 %>');
Groups_controller:
def rem_req
if @group.groupes_admin.count == 1 && @group.groupes_admin.where(user_id: current_user).any?
flash[:error] = "Vous devez définir un nouvel Admin ou supprimer ce groupe"
else
RemReqGroupJob.perform_later(current_user, @group)
flash[:error] = "Vous ne faites plus parti de #{@group.name}"
@group2 = Group.where(id: @group.id).last
end
respond_to do |format|
format.html { redirect_back }
format.js
end
end
,當我嘗試運行此,我有這樣的錯誤:
ActionView::Template::Error ('nil' is not an ActiveModel-compatible object. It must implement :to_partial_path.):