Skip to content

Commit

Permalink
削除をブロードキャスト方式に変更
Browse files Browse the repository at this point in the history
  • Loading branch information
yakitorii committed Dec 12, 2022
1 parent 128a773 commit 84a921a
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 26 deletions.
2 changes: 2 additions & 0 deletions hotwire-tw-demo/app/models/emotion.rb
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,7 @@ def like_countup!
update!(like_count: like_count + 1)
end

# NOTE: broadcasts_to -> (_emotion) { "emotions" }, inserts_by: :prepend でも代用可
after_create_commit -> { broadcast_prepend_to("emotions") }
after_destroy_commit -> { broadcast_remove_to("emotions") }
end
54 changes: 28 additions & 26 deletions hotwire-tw-demo/app/views/emotions/_emotion.html.erb
Original file line number Diff line number Diff line change
@@ -1,27 +1,29 @@
<li class="emotion-card">
<div class="emotion-content">
<div class="emotion-header">
<span class="fullname">
<strong><%= emotion.name %></strong>
</span>
<span class="emotion-time">
<%= link_to "- #{l(emotion.created_at, format: :date)}", emotion_path(emotion) %>
</span>
<%= turbo_frame_tag emotion do %>
<li class="emotion-card">
<div class="emotion-content">
<div class="emotion-header">
<span class="fullname">
<strong><%= emotion.name %></strong>
</span>
<span class="emotion-time">
<%= link_to "- #{l(emotion.created_at, format: :date)}", emotion_path(emotion) %>
</span>
</div>
<div class="emotion-card-avatar">
<%== show_icon(Emotion.icons[emotion.icon]) %>
</div>
<div class="emotion-text">
<p> <%= simple_format emotion.body %> </p>
</div>
<div class="emotion-footer">
<%= button_to like_emotion_path(emotion), method: :put, class: "emotion-footer-btn" do %>
<svg class="bi me-2" width="20" height="20"><use xlink:href="#balloon-heart-fill"/></svg><span><%=emotion.like_count %></span>
<% end %>
<%= button_to emotion, method: :delete, class: "emotion-footer-btn" do %>
<svg class="bi me-2" width="20" height="20"><use xlink:href="#trash-fill"/></svg>
<span>削除</span>
<% end %>
</div>
</div>
<div class="emotion-card-avatar">
<%== show_icon(Emotion.icons[emotion.icon]) %>
</div>
<div class="emotion-text">
<p> <%= simple_format emotion.body %> </p>
</div>
<div class="emotion-footer">
<%= button_to like_emotion_path(emotion), method: :put, class: "emotion-footer-btn" do %>
<svg class="bi me-2" width="20" height="20"><use xlink:href="#balloon-heart-fill"/></svg><span><%=emotion.like_count %></span>
<% end %>
<%= button_to emotion, method: :delete, class: "emotion-footer-btn" do %>
<svg class="bi me-2" width="20" height="20"><use xlink:href="#trash-fill"/></svg>
<span>削除</span>
<% end %>
</div>
</div>
</li>
</li>
<% end %>

0 comments on commit 84a921a

Please sign in to comment.