(извините за мой английский)
Я понял, 3 вкладки, которые динамически перезагружают мои действия, делается запрос GET для отображения определенного списка действий (активность группы / пользователя / новости)
Однако у меня есть код jquery, который больше не запускается, когда я нажимаю на одну из этих вкладок. С помощью rails я возвращаю коллекцию для отображения действий, остается решение поместить jquery в эту коллекцию, но когдаЯ делаю это, jquery выполняется для каждой загруженной деятельности и не то, что я хочу.
Деятельности:
<div class="activity-card-container" id="activity-cards">
<%= render partial: 'activities/activity', collection: @activities %>
</div>
$('.newness').on('mouseenter', function (event) {
event.preventDefault();
$(this).toggleClass('d-none');
let num = parseInt($.trim($('.body__activity_counter').html()));
$('.body__activity_counter').html(--num);
if (num == 0) {
$('.body__activity_counter').addClass('hover');
}
newnessId = $(this).data('id');
$.ajax({url: '/user_activities.json', method: 'POST', data: {user_activity: {activity_id: newnessId}}})
});
Частичная активность:
<div class="activity--js margin-card activity-card card card-body">
.......
<%= activity.title %>
<%= activity.content %>
.......
</div>
Один из контроллеров Tab:
def fetch_activities
user = current_user
activities = []
user.groups.each do |group|
activities << Activity.where(group: group)
end
@all_activities = activities.flatten.sort_by(&:updated_at).reverse
respond_to do |format|
format.js
end
end
и его маршрут:
get "/fetch_activities" => 'activities#fetch_activities', as: 'fetch_activities'
Спасибо