Bug,切换布尔字段的状态

时间:2017-05-23 00:48:05

标签: javascript ruby-on-rails ajax

我正在使用https://gorails.com/forum/switch-state-of-boolean-field作为指导来切换布尔值。我使用partial来显示所有对象,但只有第一个对象切换布尔值。此外,ajax无法正常工作,我必须刷新页面以显示新的布尔值。

这是posts_controller:

def toggle_confirm

respond_to do |format|
    format.html
    format.js
end

    @post = Post.find_by(params[:id])
    @post.toggle!(:confirm)

end

以下是views / shared / _received_feed partial:

<ol class="posts">
<% @received_feed.each do |feed| %>
    <%= render feed %>

    <%= link_to "#{ feed.confirm ? 'Confirmed' : 'Disabled' }", toggle_confirm_post_path(feed), method: :patch, remote: :true, class: "btn btn-xs btn-#{ feed.confirm ? 'success' : 'warning' }"  %>

<% end %>
</ol>

以下是views / toggle_confirm.js.erb:

console.log(<%= @post.confirm %>);
<% if @post.confirm == true %>
    $(".post-<%= @post.id %> > 
        a").html('3Confirmed').removeClass('btn-warning').addClass('btn-success')
<% else %>
    $(".post-<%= @post.id %> > a").html('Not 
        Confirmed').removeClass('btn-success').addClass('btn-warning')
<% end %>
$("#post-status-<%= @post.id %>").html("<%= 
    @post.confirm %>")

以下是显示每个帖子视图/帖子/ _posts的部分内容:

<li id="post-<%= post.id %>">

  <span class="user"><%= post.sender.name %></span>
  <br>
  <span class="image"><%= image_tag post.sender.avatar.url(:thumb) %>
</span>
  <br>

  <span class="note"><%= post.note %></span>
  <br>

</li>

0 个答案:

没有答案