How can @badges_available
list all badges from User.first
(the admin user) except for those badges which have already been completed by current_user? Something like .where(title != @badges_available.title)
@badges_available = User.first.badges.where.not(title: current_user.badges.title) # undefined method `title' for #<Badge::ActiveRecord_Associations_CollectionProxy:0x007fb85a6db2c0>
@badges_completed = @user.badges
This way in the view the there is never a duplication of title
. If an available
badge is completed then it should only show under completed
and not available
anymore.
<% @badges_completed.each do |completed| %>
<%= completed.title %><br>
<% end %>
<% @badges_available.each do |available| %>
<%= available.title %>
<% end %>