У меня есть show.html.haml вьюха, которая показывает количество лайков на посте
= @post.likes.count
В контроллере в экшене create прописал:
respond_to do |format|
format.js { render template: 'posts/show.js.haml' }
format.html { redirect_to post_path(@post) }
end
При рендере html, редиректит на этот же пост, т.е. просто обновляется страница для отображения нового лайка. Как мне сделать отправку через JS, чтобы не нужно было обновлять всю страницу?
Я создал show.js.haml для рендера формата js, но что туда писать?
Для баттона Like добавил remote: true, чтобы вызывался ajax:
= link_to 'Like', post_likes_path(@post), method: :post, class: 'btn btn-outline-dark', remote: true
Я переместил строчку
= @post.likes.count
в новый паршиал _likescount.html.haml.
В show.js.erb добавил код для рендера этого паршиала на своей вьюхе:
var likes = document.querySelector("#likes");
likes.innerHTML = "<%= j render partial: 'posts/likescount' %>";
В контроллере likes_controller.rb в конец экшена create:
respond_to do |format|
format.js { render 'posts/show.js.erb' }
end
Таким образом, при создании лайка, экшен create рендерит show.js.erb, который отдельно рендерит @post.likes.count во вьюху show.html.haml.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
я по нажатию на один блок div, динамически создаю текстовый блок в котором сообщения, и соответственно есть прокрутка! как сделать чтоб этот...
Я почти не работал с nodejs а тем более с electronjsПоэтому не понимаю как происходит передача файлов
Пытался понять их различия, но так и не понял, зачем их использоватьНапример, li:nth-child(odd) и li:nth-of-type(odd)